我更喜欢这样:
- [color=#8b4513];;;ARG => lineEName segQuantity[/color]
- [b][color=BLACK]([/color][/b]defun ldivid [b][color=FUCHSIA]([/color][/b]en q / ed p10 p11 d i[b][color=FUCHSIA])[/color][/b]
- [b][color=FUCHSIA]([/color][/b]setq ed [b][color=NAVY]([/color][/b]entget en[b][color=NAVY])[/color][/b]
- p10 [b][color=NAVY]([/color][/b]cdr [b][color=MAROON]([/color][/b]assoc 10 ed[b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b]
- p11 [b][color=NAVY]([/color][/b]cdr [b][color=MAROON]([/color][/b]assoc 11 ed[b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b]
- d [b][color=NAVY]([/color][/b]/ [b][color=MAROON]([/color][/b]distance p10 p11[b][color=MAROON])[/color][/b] q[b][color=NAVY])[/color][/b]
- i 1[b][color=FUCHSIA])[/color][/b]
- [b][color=FUCHSIA]([/color][/b]repeat [b][color=NAVY]([/color][/b]1- q[b][color=NAVY])[/color][/b]
- [b][color=NAVY]([/color][/b]entmake [b][color=MAROON]([/color][/b]list [b][color=GREEN]([/color][/b]cons 0 [color=#2f4f4f]"POINT"[/color][b][color=GREEN])[/color][/b]
- [b][color=GREEN]([/color][/b]cons 10 [b][color=BLUE]([/color][/b]polar p10 [b][color=RED]([/color][/b]angle p10 p11[b][color=RED])[/color][/b] [b][color=RED]([/color][/b]* d i[b][color=RED])[/color][/b][b][color=BLUE])[/color][/b][b][color=GREEN])[/color][/b][b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b]
- [b][color=NAVY]([/color][/b]setq i [b][color=MAROON]([/color][/b]1+ i[b][color=MAROON])[/color][/b][b][color=NAVY])[/color][/b][b][color=FUCHSIA])[/color][/b]
- [b][color=FUCHSIA]([/color][/b]prin1[b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
如果这条线是3D的,那么这里的问题就解决了。代替(极坐标)调用,您必须计算点值。
-大卫 |