angle 함수를 이용하여 원하는 각도로 값을 넣을려고 하는데
적용되는 값이 이상해서 질문드립니다.
예를 들어
(setq a (0.5 2))
(setq b (0.5 0)) 이라는 좌표가 있을때
(angle b a)를 하면 0,0의 우측 선을 기준으로 시계 반대방향으로 각도를 재는건가요?
그리고 만약 저 a,b 변수가 다른 곳으로 이동되면 그 이동된 곳을 기준으로 뽑히는건가요?
제가 원하는 리습이
어떤 임의의 기준점에서 상하좌우로 도형을 뽑아내고 중간부분을 원하는 각도로 휘게끔 하려고 하는데
그 휘어지는 각도의 기준이 각 방향별로 0도 90도 180도 270도 입니다.
근데 이동된 변수가 적용이 되는게 아니라 그냥 처음 0도를 기준으로 각도값이 계속 적용이 되어서
질문드립니다.
그러니까 만약 a(1 1) , b(1,0) 이면 45도잖아요
근데 이걸 a(-1 -1), b( -1, 0) 이렇게 이동이 되었어요
그럼 a와 b는 마찬가지로 45도가 되어야 되는데 뭔가 이상한 값이 나옵니다..
고수님들 각도 리습에 대한 자세한 설명좀 부탁드려요 ㅠ
공유
angle은 한 포인트에서 다른 포인트의 각을 잽니다.
0.0에서 사이각 또는 회전각을 재는 것이 아닙니다.
고로 님이 생각하는 것이 다 틀리네요.
한 포인트에서 다른 포인트의 각을 잰다는게 정확히 어떤 말이신거죠?
제가 생각한건 (1,1) (1,0)을 angle로 나타내는게 (0,0)~(1,0)의 선과 (0,0)~(1,1)의 선의 사이각을 잰다고 생각했는데 이게 아니라는 말이시죠? 그럼 (1,1) (1,0)이 바로 이어지는 선의 각을 잰다는건가요?
그러면 기준선이없는데 각도가 없지않나요?
(defun c:123()
(angtos
(angle
(setq a (getpoint “np1”))
(setq b (getpoint a “np2”))
)
0
1
)
)
이거 실행하시면 감이 오실겁니다.
일단 리습으로 결과를 알수 있게 답변 주신 것 감사합니다. 확인 해봤는데 사잇값이라기 보단 기준점을 정하고 다음에 찍히는 점까지의 각이였네요.. 그럼 우측으로 45도를 찍고, 다시 미러를 하여 우측으로 45도라는 값을 넣을려면 중간에 다른 코딩을 넣어야되는거네요;