277283904 发表于 2024-1-11 16:50:05

d1742647821 发表于 2024-1-11 14:12
学学吧,做梦代码不会自己跑出来,你这个问题新手就能搞定

可以写一下吗,我真的是白纸一张,在明经看了一些基础教程,感觉很难入门:'(

wzg356 发表于 2024-1-11 17:20:08

我写了一个取得任意线坐标,里面就有起点至任意长度坐标等算法,读懂那个函数就可解决

ljpnb 发表于 2024-1-11 17:58:01

277283904 发表于 2024-1-11 10:12
没反应呢
选择一条线后不会得出这条线的4分之1的线

选了直线之后,再选择一个插入点,会出来一条1/4长的直线

qazxswk 发表于 2024-1-11 18:05:26

本帖最后由 qazxswk 于 2024-1-11 18:10 编辑

277283904 发表于 2024-1-11 10:12
没反应呢
选择一条线后不会得出这条线的4分之1的线
ljpnb网友的代码是,选择一条直线后,在旁边点一下,再生成一条1/4的线
我这里有个代码,是把选择的线,原地直接缩放1/4。
(defun c:11(/ ent obj pt)
(setq ent (entsel "\n选择一条线:"))
(setq obj (vlax-ename->vla-object (car ent)))
(setq pt (osnap (cadr ent) "nea"))
(vla-scaleentity obj (vlax-3d-point pt) 0.25)
(princ))

另外,还有一个方法,在选择的直线上,直接生成一个红色的1/4的线

(defun c:22(/ ent obj len pt1 pt2)
(setq ent (entsel "\n选择一条线:"))
(setq obj (vlax-ename->vla-object (car ent)))
(setq len (/ (vla-get-length obj) 4))
(setq pt1 (osnap (cadr ent) "nea"))
(setq pt2 (polar pt1 0 len))
(entmake (list '(0 . "LINE")'(62 . 1) (cons 10 pt1) (cons 11 pt2)))
(princ))

xyp1964 发表于 2024-1-11 20:33:46

4分之1线长


277283904 发表于 2024-1-12 16:51:06

xyp1964 发表于 2024-1-11 20:33
4分之1线长

怎么实现的

277283904 发表于 2024-1-12 16:56:54

qazxswk 发表于 2024-1-11 18:05
ljpnb网友的代码是,选择一条直线后,在旁边点一下,再生成一条1/4的线
我这里有个代码,是把选择的线, ...

两段代码都没反应呢

qazxswk 发表于 2024-1-12 21:39:28

在每个代码第一行下面加一句(vl-load-com)

277283904 发表于 2024-1-15 18:00:51

qazxswk 发表于 2024-1-12 21:39
在每个代码第一行下面加一句(vl-load-com)

问题解决,谢谢!
页: 1 [2]
查看完整版本: 怎么直接计算出一根线的4分之1并且直接生成4分之1的线呢