back 发表于 2025-4-20 18:31:45

引线标注的端部线型设置为箭头

本帖最后由 back 于 2025-4-20 20:02 编辑

请教一下,我想要把引线标注的端部线型
想要设置为“箭头”型式
下面的代码请指导一下这样子的写是否正确


[*](defun VIEW_GJ (VOBJ VBASEPT VBL / DIST FIRSTPT LOOP_ID NEWCENPT PT1 PT2 VANGLE VPOINT VPOINTENT MOVEPT LEADERPOINTS LEADER)
[*](setq LOOP_ID T)
[*](setq ALPHA 0)
[*](setvar "CURSORSIZE" 1) ; 将光标大小设置为1,最小尺寸
[*](princ "\n请输入编号标注点:")
[*](while LOOP_ID
[*]    (setq VPOINTENT (grread T 4 1))
[*]    (if (= 5 (car VPOINTENT)) ; 滑鼠移动事件
[*]      (progn
[*]      (redraw)
[*]      (setq VPOINT (cadr VPOINTENT))
[*]      (setq MOVEPT VPOINT) ; 记录直线第二点
[*]      (setq DIST (distance VBASEPT VPOINT))
[*]      (setq VANGLE (angle VBASEPT VPOINT))
[*]      (setq NEWCENPT (polar VBASEPT VANGLE (+ DIST (* VBL 2.5))))
[*]      (setq FIRSTPT (vlax-3d-point NEWCENPT))
[*]      (vla-put-insertionpoint VOBJ FIRSTPT)
[*]
[*]      ;; 显示动态线预览
[*]      (grvecs (list 2 VBASEPT VPOINT))
[*]      )
[*]    )
[*]
[*]    ;; 若按下点选完成
[*]    (if (or (= 3 (car VPOINTENT)) (= 2 (car VPOINTENT)) (= 11 (car VPOINTENT)))
[*]      (progn
[*]      (redraw)
[*]      (setq LOOP_ID nil)
[*]      (setq STARTPT (vlax-3d-point VBASEPT))
[*]      (setq ENDPT (vlax-3d-point MOVEPT))
[*]
[*]      ;; 建立箭头引线
[*]
[*]      (setq LeaderPoints (vlax-make-safearray vlax-vbDouble '(0 . 5)))
[*]      (vlax-safearray-put-element LeaderPoints 0 (car VBASEPT))
[*]      (vlax-safearray-put-element LeaderPoints 1 (cadr VBASEPT))
[*]      (vlax-safearray-put-element LeaderPoints 2 0.0)
[*]      (vlax-safearray-put-element LeaderPoints 3 (car MOVEPT))
[*]      (vlax-safearray-put-element LeaderPoints 4 (cadr MOVEPT))
[*]      (vlax-safearray-put-element LeaderPoints 5 0.0)
[*]
[*]      (setq Leader (vla-addLeader
[*]                        MSPACE
[*]                        LeaderPoints
[*]                        VOBJ
[*]                        acLineWithArrow)) ; 指定箭头样式
[*]
[*]      ;; 设定图层
[*]      (setvar "CLAYER" "符号")
[*]      )
[*]    )
[*])
[*](setvar "CURSORSIZE" OLDCURS)
[*](princ)
[*])

liuhe 发表于 2025-4-20 19:44:45

屎黄色真的看清楚代码?

back 发表于 2025-4-20 20:02:41

liuhe 发表于 2025-4-20 19:44
屎黄色真的看清楚代码?

对不起…
小弟没注意到

菜卷鱼 发表于 2025-4-21 15:34:32

我一般使用 vla-put-ArrowheadType 去设置的 , 箭头样式是 0开始 , 最大多少个,你可以从箭头属性表里去数,一般我是用 11
(vla-put-ArrowheadTypeLeader11)
页: [1]
查看完整版本: 引线标注的端部线型设置为箭头