Bugfix zur Feststellung der Koordinatensysteme von AS und ES
This commit is contained in:
+9
-2
@@ -1122,7 +1122,11 @@
|
|||||||
(setq blk-tbl (tblsearch "BLOCK" bname))
|
(setq blk-tbl (tblsearch "BLOCK" bname))
|
||||||
(if blk-tbl
|
(if blk-tbl
|
||||||
(progn
|
(progn
|
||||||
(setq sub-ent (entnext (cdr (assoc -2 blk-tbl))))
|
;; (assoc -2) ist bereits das ERSTE Entity der Blockdefinition, NICHT der
|
||||||
|
;; BLOCK-Header - direkt hier starten. Ein (entnext ...) davor uebersprang
|
||||||
|
;; das erste Entity: stand dort ein gesuchter Sub-Block (z.B. das AS-Element
|
||||||
|
;; als erstes INSERT in VF_n), fehlte er im Ergebnis (K1/AS-KS-Verlust).
|
||||||
|
(setq sub-ent (cdr (assoc -2 blk-tbl)))
|
||||||
(while sub-ent
|
(while sub-ent
|
||||||
(setq sub-ed (entget sub-ent))
|
(setq sub-ed (entget sub-ent))
|
||||||
(if (= (cdr (assoc 0 sub-ed)) "INSERT")
|
(if (= (cdr (assoc 0 sub-ed)) "INSERT")
|
||||||
@@ -1152,7 +1156,10 @@
|
|||||||
;; Volle 3D-Orientierung dieses Sub-INSERTs in Weltkoordinaten.
|
;; Volle 3D-Orientierung dieses Sub-INSERTs in Weltkoordinaten.
|
||||||
(setq R-local (mat3-from-normal-rotation extrusion rot))
|
(setq R-local (mat3-from-normal-rotation extrusion rot))
|
||||||
(setq R-world (mat3-mul-mat3 basis-R R-local))
|
(setq R-world (mat3-mul-mat3 basis-R R-local))
|
||||||
(if (wcmatch sub-bname pattern)
|
;; wcmatch ist case-sensitiv - Blockname UND Muster gross vergleichen,
|
||||||
|
;; damit "AS_ELEMENT*" auch "AS_Element_90_rechts_3D" trifft (Aufrufer
|
||||||
|
;; wie csv:vfgf-ks-loc uebergeben das Muster in Grossschreibung).
|
||||||
|
(if (wcmatch (strcase sub-bname) (strcase pattern))
|
||||||
(setq result (cons (list sub-ent world-pt R-world
|
(setq result (cons (list sub-ent world-pt R-world
|
||||||
(* bsx sx) (* bsy sy) (* bsz sz))
|
(* bsx sx) (* bsy sy) (* bsz sz))
|
||||||
result))
|
result))
|
||||||
|
|||||||
Reference in New Issue
Block a user