;;--------------------------------------------------------------------------* ;; Modulbeschreibung: ;; Farbe Kanten die kuerzer als eine bestimmte Laenge sind ;; ;;--------------------------------------------------------------------------* (in-package :mip) (use-package :OLI) (sd-defdialog 'kanten_filtern :dialog-title "Kanten Filtern" :toolbox-button t :variables '( (ACOLOR :value-type :rgb-color :title "Farbe" :initial-value (sd-rgb-to-color 1,0,0) :prompt-text "Neue Kantenfarbe selektieren" :after-input (progn (if (AND BAUTEIL KLAENGE) (do_it)) ) ) ("-") (KLAENGE :value-type :positive-length :title "Kantenlaenge" :prompt-text "Max Kantenlaenge eingeben" :proposals (1 2 5 10 15) :after-input (progn (if BAUTEIL (do_it)) ) ) ("-") (bauteil :value-type :part :prompt-text "Teil angeben" :title "Teil" :initial-value nil ;:modifies nil : kanten faerben braucht schreib rechte ! :after-input (progn (if KLAENGE (do_it)) ) ) ) :local-functions '( (do_it () (let (i kanten istlang) (setf kanten (sd-call-cmds (get_selection :focus_type *sd-edge-3d-seltype* :select :in_part bauteil))) (dolist (i kanten) (setf istlang (sd-call-cmds (measure_dist :edge_length i))) (if (< istlang KLAENGE ) (sd-call-cmds (set_edge_color i ACOLOR)) ) ) )) ) )