Povratak / back


;Ova naputbina crta crtu u prostoru na osnovu presjeka prvih dviu odabranih ravnina (TIN trokuta),

;a koja je omedjena s druge dvie odabrane ravnine (TIN trokuta).

;Druge dvie ravnine ne smiju biti uzporedne s prve dvie ravnine, ter prve dvie ravnine ne smiju biti

;medjusobno uzporedne. Druge dvie ravnine mogu biti medjusobno uzporedne.


;Bog je jedini velik, a mi ljudi što smo umišljeniji to smo jadniji, ter sve više mislimo da smo nezamienjivi i neuništivi...




(defun c:bip ()


(princ "\noznaci prvi 3protezni trokut za presjek i pritisni ENTER")

(setq skupt1 (ssget '((0 . "POLYLINE"))))

(setq toct1_1 (cdr (assoc 10 (entget (entnext (cdr (car (entget (ssname skupt1 0))))))))) ;mienjaj skupt1

(setq y1 (nth 0 toct1_1)) (setq x1 (nth 1 toct1_1)) (setq z1 (nth 2 toct1_1))

(setq toct1_2 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt1 0))))))))))))) ;mienjaj skupt1

(setq y2 (nth 0 toct1_2)) (setq x2 (nth 1 toct1_2)) (setq z2 (nth 2 toct1_2))

(setq toct1_3 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt1 0))))))))))))))))) ;mienjaj skupt1

(setq y3 (nth 0 toct1_3)) (setq x3 (nth 1 toct1_3)) (setq z3 (nth 2 toct1_3))

(setq A1 (- (* (- x2 x1) (- z3 z1)) (* (- z2 z1) (- x3 x1)))) ;činbenik ravnine A - mienjaj A1

(setq B1 (+ (* (- y1 y2) (- z3 z1)) (* (- z2 z1) (- y3 y1)))) ;mienjaj B1

(setq C1 (- (* (- y2 y1) (- x3 x1)) (* (- x2 x1) (- y3 y1)))) ;mienjaj C1

(setq D1 (* (- 1) (+ (* A1 y1) (* B1 x1) (* C1 z1)))) ;mienjaj A1, B1, C1, D1


(princ "\noznaci drugi 3protezni trokut za presjek i pritisni ENTER")

(setq skupt2 (ssget '((0 . "POLYLINE"))))

(setq toct1_1 (cdr (assoc 10 (entget (entnext (cdr (car (entget (ssname skupt2 0))))))))) ;mienjaj skupt1

(setq y1 (nth 0 toct1_1)) (setq x1 (nth 1 toct1_1)) (setq z1 (nth 2 toct1_1))

(setq toct1_2 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt2 0))))))))))))) ;mienjaj skupt1

(setq y2 (nth 0 toct1_2)) (setq x2 (nth 1 toct1_2)) (setq z2 (nth 2 toct1_2))

(setq toct1_3 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt2 0))))))))))))))))) ;mienjaj skupt1

(setq y3 (nth 0 toct1_3)) (setq x3 (nth 1 toct1_3)) (setq z3 (nth 2 toct1_3))

(setq A2 (- (* (- x2 x1) (- z3 z1)) (* (- z2 z1) (- x3 x1)))) ;činbenik ravnine A - mienjaj A1

(setq B2 (+ (* (- y1 y2) (- z3 z1)) (* (- z2 z1) (- y3 y1)))) ;mienjaj B1

(setq C2 (- (* (- y2 y1) (- x3 x1)) (* (- x2 x1) (- y3 y1)))) ;mienjaj C1

(setq D2 (* (- 1) (+ (* A2 y1) (* B2 x1) (* C2 z1)))) ;mienjaj A1, B1, C1, D1


(princ "\noznaci prvi 3protezni omedjujuci trokut i pritisni ENTER")

(setq skupt3 (ssget '((0 . "POLYLINE"))))

(setq toct1_1 (cdr (assoc 10 (entget (entnext (cdr (car (entget (ssname skupt3 0))))))))) ;mienjaj skupt1

(setq y1 (nth 0 toct1_1)) (setq x1 (nth 1 toct1_1)) (setq z1 (nth 2 toct1_1))

(setq toct1_2 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt3 0))))))))))))) ;mienjaj skupt1

(setq y2 (nth 0 toct1_2)) (setq x2 (nth 1 toct1_2)) (setq z2 (nth 2 toct1_2))

(setq toct1_3 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt3 0))))))))))))))))) ;mienjaj skupt1

(setq y3 (nth 0 toct1_3)) (setq x3 (nth 1 toct1_3)) (setq z3 (nth 2 toct1_3))

(setq A3 (- (* (- x2 x1) (- z3 z1)) (* (- z2 z1) (- x3 x1)))) ;činbenik ravnine A - mienjaj A1

(setq B3 (+ (* (- y1 y2) (- z3 z1)) (* (- z2 z1) (- y3 y1)))) ;mienjaj B1

(setq C3 (- (* (- y2 y1) (- x3 x1)) (* (- x2 x1) (- y3 y1)))) ;mienjaj C1

(setq D3 (* (- 1) (+ (* A3 y1) (* B3 x1) (* C3 z1)))) ;mienjaj A1, B1, C1, D1


(princ "\noznaci drugi 3protezni omedjujuci trokut i pritisni ENTER")

(setq skupt4 (ssget '((0 . "POLYLINE"))))

(setq toct1_1 (cdr (assoc 10 (entget (entnext (cdr (car (entget (ssname skupt4 0))))))))) ;mienjaj skupt1

(setq y1 (nth 0 toct1_1)) (setq x1 (nth 1 toct1_1)) (setq z1 (nth 2 toct1_1))

(setq toct1_2 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt4 0))))))))))))) ;mienjaj skupt1

(setq y2 (nth 0 toct1_2)) (setq x2 (nth 1 toct1_2)) (setq z2 (nth 2 toct1_2))

(setq toct1_3 (cdr (assoc 10 (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (entnext (cdr (car (entget (ssname skupt4 0))))))))))))))))) ;mienjaj skupt1

(setq y3 (nth 0 toct1_3)) (setq x3 (nth 1 toct1_3)) (setq z3 (nth 2 toct1_3))

(setq A4 (- (* (- x2 x1) (- z3 z1)) (* (- z2 z1) (- x3 x1)))) ;činbenik ravnine A - mienjaj A1

(setq B4 (+ (* (- y1 y2) (- z3 z1)) (* (- z2 z1) (- y3 y1)))) ;mienjaj B1

(setq C4 (- (* (- y2 y1) (- x3 x1)) (* (- x2 x1) (- y3 y1)))) ;mienjaj C1

(setq D4 (* (- 1) (+ (* A4 y1) (* B4 x1) (* C4 z1)))) ;mienjaj A1, B1, C1, D1


(setq br1 (- (/ (* B2 D1) B1 ) D2 )) ;prvi brojnik izraza za z

(setq br2 (/ (- (* B3 (- A2 A1)) (* A3 (- B2 B1)) ) (- (* A1 (/ B2 B1)) A2) )) ;drugi brojnik izraza za z - mienjaj B3 A3

(setq br3 (- (* (- B2 B1) D3) (* B3 (- D2 D1)) )) ;treći brojnik izraza za z - mienjaj D3 B3

(setq n1 (- (* C1 (/ B2 B1)) C2 )) ;prvi nazivnik izraza za z

(setq n2 (/ (- (* A3 (- B2 B1)) (* B3 (- A2 A1))) (- (* A1 (/ B2 B1)) A2) )) ;drugi nazivnik izraza za z - mienja A3 B3

(setq n3 (- (* B3 (- C2 C1)) (* C3 (- B2 B1)) )) ;treći nazivnik izraza za z - mienjaj B3 C3

(setq zz1 (/ (+ (* br1 br2) br3) (+ (* n1 n2) n3)) ) ;izracunata suosnica z od prve točke brida - mienjaj zz1

(setq yy1 (/ (+ (* zz1 C1 (/ B2 B1)) (* (- C2) zz1) (* (/ B2 B1) D1) (- D2)) (- A2 (* A1 (/ B2 B1))) )) ;izracunata suosnica y od prve točke brida - mienjaj yy1, zz1

(setq xx1 (/ (+ (* yy1 (- A2 A1)) (* zz1 (- C2 C1)) D2 (- D1)) (- B1 B2) )) ;izracunata suosnica x od prve točke brida - mienjaj xx1, yy1, zz1


(setq br1 (- (/ (* B2 D1) B1 ) D2 )) ;prvi brojnik izraza za z

(setq br2 (/ (- (* B4 (- A2 A1)) (* A4 (- B2 B1)) ) (- (* A1 (/ B2 B1)) A2) )) ;drugi brojnik izraza za z - mienjaj B3 A3

(setq br3 (- (* (- B2 B1) D4) (* B4 (- D2 D1)) )) ;treći brojnik izraza za z - mienjaj D3 B3

(setq n1 (- (* C1 (/ B2 B1)) C2 )) ;prvi nazivnik izraza za z

(setq n2 (/ (- (* A4 (- B2 B1)) (* B4 (- A2 A1))) (- (* A1 (/ B2 B1)) A2) )) ;drugi nazivnik izraza za z - mienja A3 B3

(setq n3 (- (* B4 (- C2 C1)) (* C4 (- B2 B1)) )) ;treći nazivnik izraza za z - mienjaj B3 C3

(setq zz2 (/ (+ (* br1 br2) br3) (+ (* n1 n2) n3)) ) ;izracunata suosnica z od prve točke brida - mienjaj zz1

(setq yy2 (/ (+ (* zz2 C1 (/ B2 B1)) (* (- C2) zz2) (* (/ B2 B1) D1) (- D2)) (- A2 (* A1 (/ B2 B1))) )) ;izracunata suosnica y od prve točke brida - mienjaj yy1, zz1

(setq xx2 (/ (+ (* yy2 (- A2 A1)) (* zz2 (- C2 C1)) D2 (- D1)) (- B1 B2) )) ;izracunata suosnica x od prve točke brida - mienjaj xx1, yy1, zz1



(command "layer" "m" "brid-spigolo" "c" "red" "" "s" "" "")

(command "line" (list yy1 xx1 zz1) (list yy2 xx2 zz2) "") ;crta brid


) ;kraj defun

Free Web Hosting