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))
|
||||
(if blk-tbl
|
||||
(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
|
||||
(setq sub-ed (entget sub-ent))
|
||||
(if (= (cdr (assoc 0 sub-ed)) "INSERT")
|
||||
@@ -1152,7 +1156,10 @@
|
||||
;; Volle 3D-Orientierung dieses Sub-INSERTs in Weltkoordinaten.
|
||||
(setq R-local (mat3-from-normal-rotation extrusion rot))
|
||||
(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
|
||||
(* bsx sx) (* bsy sy) (* bsz sz))
|
||||
result))
|
||||
|
||||
Reference in New Issue
Block a user