
RIPRA VÁŠ PDMS PARTNER
Jaké je využití tzv. inteligentních textů v Draftu?
01.02.2013 16:58Při vytváření výkresové dokumentace v PDMS modulu Draft lze využít v rámci popisků a kót tzv. inteligentních textů. Za inteligentní texty považujeme takové texty, které automaticky ziskavaji informace z jiných databázových prvků. Nejčastějším využitím je propojení k elementu z designové databáze, ale lze využít i draftovou a katalogovou databázi.
Zdrojové databáze
- designová databáze
- katalogová databáze
- draftová databáze
Výhodou inteligentních textů je přenos informace z jiného prvku. Klasickým příkladem může být vytváření plánů rozmístění zařízení nebo instrumentů. Klasickou ukázkou je příklad kdy dojde ke změně názvu například čerpadla v designu, pak po provedení update annotation v draftu nedojde u popisků bez inteligentniho textu k žádne změně a uživatel musí modifikovat všechny tyto texty manálně. Ale u popisku s inteligentnim textem odkazujicím na jméno čerpadla dojde k jeho přestavení na novou hodnotu automaticky.
Výhody využití inteligentních textů
- pokud jsou modifikována data v libovolné ze tří výše uvedených databází pak po aktualizaci výkresu budou hodnoty inteligentních textů automaticky získány nové správné hodnoty a ty zobrazeny na výkrese.
- Uživatel nemusí procházet příslušnou databází, načítat data, vracet se do databáze DRAFT a ručně zadávat data.
- Stejný inteligentní textový řetězec s vloženými kódovými hesly lze mnohokrát použít k generování textových řetězců, které jsou podobné ve formátu, avšak vlastní výstupní hodnoty jsou odlišné.
Atributy pro užití inteligentních textů
- DMTX - hodnota kótovacího textu (dimension line text)
- PLTX - hodnota textu uváděného na vynášecí čáře kóty (projection line text)
- BTEX - popisový text v prvcích GLAB nebo TEXP, TXTM
- ATEX - obdoba BTEX v prvku SLAB
Dle určení se můžeme setkat s využitím inteligentních textů:
- při tvorbě popisků v prvcích
- GLAB (BTEX)
- SLAB (ATEX)
- TEXP (BTEX)
- TXTM
- při tvorbě kót
- LDIM (DMTX, PLTX)
- DPPT (DMTX, PLTX)
- DPBA (DMTX, PLTX)
- DPOI (DMTX, PLTX, nemá ale přímou vazbu k designovému elementu)
- ADIM (DMTX, PLTX)
- ADIR (DMTX, PLTX)
- APPT (DMTX, PLTX)
- DPPT (DMTX, PLTX)
- DPOI (DMTX, PLTX, nemá ale přímou vazbu k designovému elementu)
- RDIM (DMTX)
- PDIM (DMTX)
- LDIM (DMTX, PLTX)
Inteligentni text používá pro vlastní kód textový řetězec začínající #. Například: #NAME
Obecný tvar je:
#AAAA + ^BB + [i,j] +
- #AAAA - je vlastní kód nebo jméno atributu resp. UDA
- ^BB - je vlastní subkod používaný za #PK
- [i,j] - udává pozici prvku v poli
- datový kvalifikátor umožňující odkaz na atribut konkrétního elementu nebo typu- (Cn:m)(P/z:y) - vytvoření podřetězce
Kódy dělíme do základních šesti skupin:
- Kódy které asociují data s designovými a katalogovými komponentami pomocí atributu DDNM v draftových prvcích.
- Kódy které asociují data s draftovými komponentami
- Kódy pro vlastní dimenzování
- Kódy pro zpřístupnění UDA
- Kódy pro zpřístupnění administrativních dat
- Kódy se speciální funkcí
Asociování dat s informacemi v designových nebo katalogových databázích pomocí atributu DDNM
V draftu lze použít všechny atributy z designových nebo katalogových databází. Lze takto zpřístupnit informace z jakéhokoliv designového elementu, dokonce nemusí být ani součástí drawlistu. V následující tabulce je několik příkladů použití.
kód | popis |
#SITE | vypíše jméno SITE nadřazené referenčnímu elementu |
#BRAN | vypíše jméno BRANCH nadřazené referenčnímu elementu |
#POS | vypíše 3D pozici referenčního elementu (W12250 N7890 U3120 ) |
#POSE | vypíše pozici ve směru East referenčního elementu mimo komponent SCTN a STWALL (E965 nebo W250) |
#POSN | vypíše pozici ve směru North referenčního elementu (N2250 nebo S945) |
#POSU | vypíše pozici ve směru Up referenčního elementu (U25365 nebo D3500) |
#HPOS | vypíše 3D pozici Head pro typ referenčního elementu BRAN nebo HANG |
#TPOS | vypíše 3D pozici Tail pro typ referenčního elementu BRAN nebo HANG |
#POSS | vypíše 3D pozici Start pro typ referenčního elementu SCTN nebo STWALL |
#POSE | vypíše 3D pozici End pro typ referenčního elementu SCTN nebo STWALL, pokud j |
#POS+ | vypíše 3D pozici referenčního elementu bez udání směrů (-12250 +7890 +3120 ) |
Načítání dat z Ppointů
Pro načtení dat z Ppointů se obecně využije kódu: #Pnxa kde:
- n = číslo Ppointu nebo A pro vstupní resp. L pro výstupní Ppoint
- x = POS, DIR, BOR, BOP, TOP nebo CON
- a = prázdné, E, N nebo U (platné pouze pro x = POS, BOP nebo TOP)
Pro Ppointy existuje optimalizace pomocí znaku ^. Tím lze dosáhnout vazby na identifikovaný point přiřazený atributu NPPT. U optimalizovaných řešení je při používání změny reference DDNM nutno zkontrolovat, zda nově asociovaný element má specifikovaný Ppoint nebo nastavit správný Ppoint v NPPT.
kód | popis |
#P3BOR | vypíše průměr P3pointu, běžně užívané s referenčním elementem typu TEE nebo OLET |
#PLBOPU | vypíše pozici BOP (spodek trubky) ve směru U danou Leav Ppointem, běžně užívané s referenčním elementem pod BRAN nebo HANG |
#P1POS | vypíše 3D pozici P1pointu referenčního elementu |
#P2^POS | vypíše 3D pozici P2pointu referenčního elementu, špatný pokus o optimalizované řešení |
#P^POS | vypíše 3D pozici Ppointu referenčního elementu definovaného v atributu NPPT,správné optimalizované řešení |
Načítání dat z Pline
Pro načtení dat z Pline se obecně využije kódu: #PKa^b kde:
- a = nic nebo Pline jméno (#PKNA), v případě že není uvedeno, bere se údaj pro určení Pline z atributu PKEY
- b = specifikuje atribut Pline
kód | popis |
^DIR | vypíše směr Pline |
^POSS | vypíše 3D pozici Start Pline referenčního elementu |
^POSSE | vypíše pozici Start Pline ve směru East referenčního elementu |
^POSSN | vypíše pozici Start Pline ve směru North referenčního elementu |
^POSSU | vypíše pozici Start Pline ve směru Up referenčního elementu |
^POSE | vypíše 3D pozici End Pline referenčního elementu |
^POSEE | vypíše pozici End Pline ve směru East referenčního elementu |
^POSEN | vypíše pozici End Pline ve směru North referenčního elementu |
^POSEU | vypíše pozici End Pline ve směru Up referenčního elementu |
^PKDI | vypíše 3D pozici pointu posouvaného po Pline, jehož vzdálenost od Start je definována v atributu PKDI ( pokud PKDI je 0, pak se jedná o pozici Start, pokud je 1 pak se jedná o pozici End) |
^PKDIE | vypíše pozici ve směru East pointu posouvaného po Pline, jehož vzdálenost od Start je definována v atributu PKDI |
^PKDIN | vypíše pozici ve směru North pointu posouvaného po Pline, jehož vzdálenost od Start je definována v atributu PKDI |
^PKDIU | vypíše pozici ve směru Up pointu posouvaného po Pline, jehož vzdálenost od Start je definována v atributu PKDI |
Několik příkladů:
- #PKNA^POSS - vrací pozici počátku Pline NA
- #PK^DIR - vrací směr Pline nastavené v atributu PKEY
- #PK^PKDI - vrací pozici na Pline nastavené v atributu PKEY a to v vzálenosti "procentuelní" vdálenosti nastavené v atributu PKDI. (PKDI = 0 pozice start vybrané Pline, PKDI = 0.5 pozice středu vybrané Pline, PKDI = 1 pozice end vybrané Pline).
- #PKTOS^POSEU - vrací výškovou pozici konce pro Pline TOS
- #PKTOS^POSEU+ - totéž jako předchozí jen výstup je formátován do pozice ‘+/-’
- #DERPOS[a] - udává pozici PJOI, FITT nebo SNOD, kde a = N pro souřadnice severu, E pro souřadnice východu a U pro výškové souřadnice
Načtení dat z datasetů katalogové databáze
Pro načtení informací z katalogových datasetů je využíván dvoudílný přikaz typu: #attribute^qualifier
Přiklad:
- #PROPERTY^WIDTH - vrací hodnotu nastavenou datasetu WIDTH
- #PRTITLE^WIDTH - vrací Title datasetu WIDTH
- použití PRDEFAULT a PRPURPOSE a jejich nastavení je obdobné.
- první řást příkazu může být minimálně 4 znaky dlouhá
- hodnoty v PROPERTY jsou dle přednastaveného typu (distance nebo průměr) v PTYPE atributu příslušného prvku DDTA (nebo DDAT) nastaveného na DIST nebo BORE .
Asociování dat s informacemi v draftových databázích
Lze asociovat všechny atributy draftových databází. K navigaci na požadovaný element lze využít kvalifikátoru FROM. Obecně platí že atribut ABCD popisovaného elelmentu je volán kódem #ABCD.
Příklad:
- #VIEW - jméno hierarchicky nadřazeného elementu typu VIEW
- #DRWG - jméno hierarchicky nadřazeného elementu typu DRWG
Lze samozřejmě zpřístupnit i informace z atributů jednotlivých draftových elementů.
Přiklad:
- #AUTH - vrací autora výkresu z DRWG
- #DTITL - vrací hodnotu atributu TITL z DRWGD
- #STITL - vrací hodnotu atributu TITL z SHEE
- #VTITL - vrací hodnotu atributu TITL z VIEW
- #TITL
- #APPR Approve
- #APDT Approval date
- #RVSN Revision
- #RVDT Revision date
- #RVAU Revision author
K načtení dat z specifikované REVI lze použít kvalifikátor. REVI element lze specifikovat jménem například #RVAU nebo lze použít pseudo-referenční pole atributů SREVAY a DREVAY například: #RVDT generující revizní datum z druhé revize na sheetu, #APPR vrací hodnotu pro toho kdo schválil výkres třetí revize.
Kódy pro vlastní dimenzování
Nejdůležitějším inteligentním textem při dimenzování a to jak lineárním, tak úhlovém jsou kody #DIM a #DEF, kde:
- #DIM - vrací hodnotu vzdálenosti vypočtené z zvolených kritérii
- #DEF - vrací hodnotu ve formátu kódu definovanou na horní úrovni.
Elementy a jejich atributy pro implementaci inteligentního textu
- LDIM (DMTX, PLTX)
- DPPT (DMTX, PLTX) - vazba k designu přes DDNM
- DPBA (DMTX, PLTX) - vazba k designu přes DDNM
- DPOI (DMTX, PLTX) - nemá ale přímou vazbu k designovému elementu)
- ADIM (DMTX, PLTX)
- ADIR (DMTX, PLTX) - vazba k designu přes DDNM
- APPT (DMTX, PLTX) - vazba k designu přes DDNM
- DPPT (DMTX, PLTX) - vazba k designu přes DDNM
- DPOI (DMTX, PLTX) - nemá ale přímou vazbu k designovému elementu
- RDIM (DMTX) - vazba k designu přes DDNM
- PDIM (DMTX) - vazba k designu přes DDNM
Inteligentní text #DIR udává směr vynášecí čáry u ADIR.
Příklad inteligentních textů užívaných v PLTX u LDIM a jejich members:
- #DIMPOS - 3D pozice
- #DIMPOSE - pozice ve směru East
- #DIMPOSN - pozice ve směru North
- #DIMPOSU - pozice ve směru Up
- #DIMPOSDD - pozice ve směru koty, například pokud je kótovací směr North pak vrací pozici ve směru North stejnou jako #DIMPOSN, pokud směr není jeden z hlavních směrů, vrací 3D pozici jako #DIMPOSa chybové hlášení (64,399) ¨/ldim-name: Dimension direction not orthogonal, so unable to calculate single coordinate for codeword #DIMPOSDD¨ .
Kódy pro zpřístupnění UDA
Informace uložené v UDA atributech jsou pžístupné kódem ve formátu: #:uda_name. Například: #:UDA1
Pro informace z UDA platí stejná pravidla jako pro ostatní standardně definované atributy.
Kódy pro zpřístupnění administrativních dat
Základní kódy inteligentních textů pro administrativní data jsou:
- #ADATE - Datum ve formátu mm/dd/yyyy, např. 09/30/1998
- #BDATE - Datum ve formátu dd/mm/yyyy, např. 30/09/1998
- #CDATE - Datum ve formátu dd mon yyyy, např. 30 Sep 1998
- #ADATEX - Datum ve formátu mm/dd/yy, např. 09/30/98
- #BDATEX - Datum ve formátu dd/mm/yy, např. 30/09/98
- #CDATEX - Datum ve formátu dd mon yy, např. 30 Sep 98
- #DFDATE - Datum ve formátu specifikovaném v DATEFOrmat atributu z DEPT nadřazenému CE.
- #TIME - systémový čas ve formátu hh:mm:ss, e.g. 09:07:57
- #SYSUSE - user systémové jméno
- #PROJECT^NUMBER - číslo projektu
- #PROJECT^NAME - jméno projektu
- #PROJECT^DESCRIPTION - popis projektu
- #PROJECT^MESSAGE - projekční zpráva
- #PROJECT^CODE - kód projektu
Nastavení atributu DATEFOrmat na prvcích DEPT nebo LIBY
Lze takto kontrolovat nastavení formátu zobrazení hodnot atributu DATE (z DRWG) a RVDT (z REVI) které jsou automaticky generovány. DATEFOrmat lze nastavit do:
- DDMMYYYY - vrací ekvivalentní formát kódu ADATE
- DDMMYY - vrací ekvivalentní formát kódu ADATEX
- MMDDYYYY - vrací ekvivalentní formát kódu BDATE
- MMDDYY - vrací ekvivalentní formát kódu BDATEX
- DDMONYYYY - vrací ekvivalentní formát kódu CDATE
- DDMONYY - vrací ekvivalentní formát kódu CDATEX
Kódy se speciální funkcí
Textový template
Kód #T umožňuje pžístup k textu definovanému v TXTM (Text Template element). Na tento textový template může být odkazováno z ostaních draftových elementů. Na příklad: #T/TEM24 #T lze použít v PLTX nebo DMTX atributu kóty nebo kótovacího bodu nebo v atributu BTEX popisky GLAB případně ATEX pro SLAB nebo přímo v textovém primitivu TEXP. Kód #T/name nesmí být použit během definice v TXTM neboť by to mohlo vést k recursivě.
—————