本帖最后由 xiaocainiao 于 2025-12-5 16:35 编辑
请教一下各位大神!
就是我在程序里面调用了move移动命令(需要预览效果)、
但不知道怎么判断、是指定点还是按回车结束的移动命令,
尝试获取移动前后对象的包围盒坐标差值、与移动的基点坐标进行判断,
(equal (- (car p2) (car p1)) (car pt_int) 0)
结果总是出现误差、判断不准确、
特来请教大家、有没有好的判断方式、万分感谢
网友答: 直接判断两点的距离呢?(if (= (distance p1 p2) 0),如果两点距离为0,说明点p2不存在。网友答:
移动时没有两点、我那个是判断的移动前后、对象包围框坐标的变化、但是判断不太准确网友答: 是左键指定点是移动指定基点或指定第二个点,按回车是结束移动命令。网友答: 你可以尝试一下这个函数
(acet-ss-drag-move ss pt [prompt] [highlight [cursor]])网友答:
就是M选择对象、指定基点以后、如果指定下一点就移动到指定点位置、如果直接空格就是以第一点作为位移进行移动、现在就是不会判断移动后的结果、是指定点还是空格移动的网友答:
这个是不是ET工具里面的函数啊
请教一下各位大神!
就是我在程序里面调用了move移动命令(需要预览效果)、
但不知道怎么判断、是指定点还是按回车结束的移动命令,
尝试获取移动前后对象的包围盒坐标差值、与移动的基点坐标进行判断,
(equal (- (car p2) (car p1)) (car pt_int) 0)
结果总是出现误差、判断不准确、
特来请教大家、有没有好的判断方式、万分感谢
网友答: 直接判断两点的距离呢?(if (= (distance p1 p2) 0),如果两点距离为0,说明点p2不存在。网友答:
qazxswk 发表于 2025-12-5 19:16
直接判断两点的距离呢?(if (= (distance p1 p2) 0),如果两点距离为0,说明点p2不存在。
移动时没有两点、我那个是判断的移动前后、对象包围框坐标的变化、但是判断不太准确网友答: 是左键指定点是移动指定基点或指定第二个点,按回车是结束移动命令。网友答: 你可以尝试一下这个函数
(acet-ss-drag-move ss pt [prompt] [highlight [cursor]])网友答:
gzcsun 发表于 2025-12-5 22:23
是左键指定点是移动指定基点或指定第二个点,按回车是结束移动命令。
就是M选择对象、指定基点以后、如果指定下一点就移动到指定点位置、如果直接空格就是以第一点作为位移进行移动、现在就是不会判断移动后的结果、是指定点还是空格移动的网友答:
lijiao 发表于 2025-12-6 09:30
你可以尝试一下这个函数
(acet-ss-drag-move ss pt [highlight [cursor]])
这个是不是ET工具里面的函数啊