xyp1964 发表于 2014-6-14 10:31:47

zhouwanweihf 发表于 2014-6-13 23:24 static/image/common/back.gif
见附件,其中产品直径是可变的.

螺旋纹理.pat

zhouwanweihf 发表于 2014-6-15 09:42:47

xyp1964 发表于 2014-6-14 10:31 static/image/common/back.gif
螺旋纹理.pat

感谢你的回复,

我需要的是这样的:
一个圆内部只填充一个螺旋纹理,以圆心为中心点,纹理可随圆大小而变化.

Excel2119 发表于 2014-6-17 02:29:12

实在是佩服的一塌糊涂

xyp1964 发表于 2014-6-17 08:38:32

本帖最后由 xyp1964 于 2018-5-17 22:23 编辑

zhouwanweihf 发表于 2014-6-15 09:42 static/image/common/back.gif
感谢你的回复,

我需要的是这样的:

(defun c:tt ()
(xyp-CMDLA0)
(setq i -1)
(if (setq ss (ssget '((0 . "CIRCLE"))))
    (while (setq s1 (ssname ss (setq i (1+ i))))
      (setq pt (xyp-DXF 10 s1)
            rr (/ (xyp-DXF 40 s1) 50.)
      )
      (command "ucs" "n" pt)
      (command "hatch" "螺旋纹理" rr (* (xyp-rand)1000) s1 "")
      (command "ucs" "")
    )
)
(xyp-CMDLA1)
)

zhouwanweihf 发表于 2014-6-17 23:14:52

非常感谢,正是我想要的,但我使用时出现错误,如何解决呢?

xyp1964 发表于 2014-6-18 20:08:33

本帖最后由 xyp1964 于 2018-5-17 22:22 编辑

;; 横平竖直及对角线的都简单;; xyp-MkPat (xyp-MkPat 基点 起点 终点 单元宽度 单元高度);; delta-x:x轴位移;delta-y:y轴位移;dash-1画线长;dash-2空移长
(defun xyp-MkPat (p0 p1 p2 dx dy / rad ang ang0      ang01 ll dash-1      dash-2 x-origin      y-origin dash-2      delta-x      delta-y delta-y1)
(setqrad (angle p1 p2)
      ang (xyp-r2d rad)
      lst (list p1 p2)
)
(if (and (>= ang 180) (not (equal ang 360 1e-5)))
    (setq p2 (car lst)
          p1 (cadr lst)
    )
)
(setq      p0         (xyp-3d2d p0)
      p1         (xyp-3d2d p1)
      p2         (xyp-3d2d p2)
      p1         (mapcar '- p1 p0)
      p2         (mapcar '- p2 p0)
      rad         (angle p1 p2)
      ang         (xyp-r2d rad)   ; 角度
      dash-1         (distance p1 p2); 线长
      r0         (angle '(0 0) (list dx dy))
      ang0         (xyp-r2d r0); 矩形对角线角度
      ang01         (angle '(0 0) (list (- dx) dy))
      ll         (distance '(0 0) (list dx dy))   ; 矩形对角线长度
      x-origin (car p1)
      y-origin (cadr p1)
      dash-2         (- dash-1 ll)
      delta-x         (* dx (cos r0))
      delta-y         (* dx (sin r0))
      delta-y1 (- delta-y)
)
(cond      ((equal y-origin (cadr p2) 1e-5);水平方向
         (list ang x-origin y-origin dx dy dash-1 (- dash-1 dx))
      )
      ((equal x-origin (car p2) 1e-5); 垂直方向
         (list ang x-origin y-origin dy dx dash-1 (- dash-1 dy))
      )
      ((equal ang ang0 1e-5);对角线方向(第1象限)
         (list ang x-origin y-origin delta-x delta-y1 dash-1 dash-2)
      )
      ((equal rad ang01 1e-5)   ; 对角线方向(第2象限)
         (list ang x-origin y-origin delta-x delta-y dash-1 dash-2)
      )
      (t (xyp-PattenCal p1 p2 dx dy))   ;★ 其它方向,这个是难度之处★
)
)

风树 发表于 2014-7-11 12:49:38

很好                           

xyp1964 发表于 2014-7-13 17:11:07

acad帮助从没能把自定义填充图案的原理讲清楚

裤裆有异味 发表于 2014-7-16 18:32:22

精品啊    ,
干得上里正的制作插件了

hooboxu 发表于 2014-10-11 00:27:34

长见识了,明天研究下
页: 1 2 3 [4] 5 6 7
查看完整版本: 【e派】自定义填充图案