找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 900|回复: 9

[求助] 如何定义过滤选择的透明命令

[复制链接]

已领礼包: 264个

财富等级: 日进斗金

发表于 2016-7-26 16:02:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 iLisp 于 2016-7-26 16:04 编辑

就像 fs 一样,在命令选择时可以输入命令并能将选择集传给命令,

  1. ;;;    FASTSEL.LSP
  2. ;;;    Created 7/21/97 by Randy Kintzley
  3. ;;;    Copyright ?1999 by Autodesk, Inc.
  4. ;;;
  5. ;;;    Your use of this software is governed by the terms and conditions of the
  6. ;;;    License Agreement you accepted prior to installation of this software.
  7. ;;;    Please note that pursuant to the License Agreement for this software,
  8. ;;;    "[c]opying of this computer program or its documentation except as
  9. ;;;    permitted by this License is copyright infringement under the laws of
  10. ;;;    your country.  If you copy this computer program without permission of
  11. ;;;    Autodesk, you are violating the law."
  12. ;;;
  13. ;;;    AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
  14. ;;;    AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
  15. ;;;    MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE.  AUTODESK, INC.
  16. ;;;    DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
  17. ;;;    UNINTERRUPTED OR ERROR FREE.
  18. ;;;
  19. ;;;    Use, duplication, or disclosure by the U.S. ** is subject to
  20. ;;;    restrictions set forth in FAR 52.227-19 (Commercial Computer
  21. ;;;    Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
  22. ;;;    (Rights in Technical Data and Computer Software), as applicable.
  23. ;;;
  24. ;;;  ----------------------------------------------------------------

  25. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  26. (defun c:fastsel (/ old_err ss ss2 n na)
  27.   (setq old_err *error*)
  28.   (defun *error* (a /)
  29.     (princ a)
  30.     (setq *error* old_err)
  31.     (princ)
  32.   )                                        ;defun

  33.   (fsmode_init)
  34.   (princ "\nUse 'FSMODE to control chain selection.")
  35.   (princ (strcat "\nFSMODE = " #fsmode))
  36.   (setq        ss2 (fs_get_current_sel)
  37.         ss  (fastsel)
  38.   )                                        ;setq

  39.   (if (and ss
  40.            (princ (strcat (itoa (sslength ss))
  41.                           " object(s) found."
  42.                   )
  43.            )
  44.            (not (equal (getvar "cmdnames") ""))
  45.       )                                        ;and
  46.     (command ss)                        ;then pass in the selection set
  47.     (progn
  48.       (if (and ss
  49.                (equal 1 (getvar "pickfirst"))
  50.           )                                ;and
  51.         (progn
  52.           (if (not ss2)
  53.             (setq ss2 ss)
  54.             (progn
  55.               (setq n 0)
  56.               (repeat (sslength ss)
  57.                 (setq na (ssname ss n))        ;setq
  58.                 (if (not (ssmemb na ss2))
  59.                   (setq ss2 (ssadd na ss2))
  60.                 )                        ;if
  61.                 (setq n (+ n 1))        ;setq
  62.               )                                ;repeat
  63.             )                                ;progn then combine the previously gripped stuff with
  64.                                         ;the selection set returned from fastsel
  65.           )                                ;if
  66.           (sssetfirst ss2 ss2)

  67.         )                                ;progn else just set a grip-ed selection set.
  68.         (princ "\nNothing found")
  69.       )                                        ;if
  70.     )                                        ;progn else
  71.   )                                        ;if

  72.   (setq *error* old_err)
  73.   (princ "\nExiting Fastsel")
  74.   (princ)
  75. )                                        ;defun c:fastsel


  76. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  77. (defun c:fs ()
  78.   (c:fastsel)
  79. )                                        ;defun c:fs

  80. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  81. (defun c:fsmode        (/ old_err fsmode)
  82.   (setq old_err *error*)
  83.   (defun *error* (a /)
  84.     (princ a)
  85.     (setq *error* old_err)
  86.     (princ)
  87.   )                                        ;defun

  88.   (fsmode_init)
  89.   (initget "ON OFf")
  90.   (if (setq
  91.         fsmode (getkword
  92.                  (strcat "\nFASTSEL chain selection <" #fsmode ">: ")
  93.                )
  94.       )                                        ;setq
  95.     (progn
  96.       (setq #fsmode (xstrcase fsmode))
  97.       (setenv "BNS_FSMODE" #fsmode)
  98.     )                                        ;progn then
  99.   )                                        ;if

  100.   (setq *error* old_err)
  101.   (princ)
  102. )                                        ;defun c:fsmode

  103. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  104. (defun fsmode_init ()
  105.   (if (not #fsmode)
  106.     (setq #fsmode (getenv "BNS_FSMODE"))
  107.   )                                        ;if
  108.   (if (and (not (equal "ON" #fsmode))
  109.            (not (equal "OFF" #fsmode))
  110.       )                                        ;and
  111.     (progn
  112.       (setq #fsmode "OFF")                ;setq
  113.       (setenv "BNS_FSMODE" #fsmode)
  114.     )                                        ;progn then
  115.   )                                        ;if
  116. )                                        ;defun fsmode_init

  117. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  118. (defun fastsel (/ flt na fsmode        lst2 ss        px px2 z j lst a b lst3        lst4 n c
  119.                 d ss2 ss4 ss5)

  120.   (setq        flt    '(
  121.                  (0 . "LINE")
  122.                  (0 . "POLYLINE")
  123.                  (0 . "LWPOLYLINE")
  124.                  (0 . "CIRCLE")
  125.                  (0 . "ARC")
  126.                  (0 . "ATTDEF")
  127.                  (0 . "TEXT")
  128.                  (0 . "MTEXT")
  129.                  (0 . "ELLIPSE")
  130.                  (0 . "IMAGE")
  131.                  (0 . "SPLINE")
  132.                  (0 . "POINT")
  133.                  (0 . "INSERT")
  134.                  (0 . "3DFACE")
  135.                  (0 . "TRACE")
  136.                  (0 . "SOLID")
  137.                 )
  138.         na     (bns_fast_sel "\nSelect touching object: " flt)
  139.         flt    (append '((-4 . "<OR")) flt '((-4 . "OR>")))
  140.         fsmode "ON"
  141.   )                                        ;setq
  142.   (if na
  143.     (progn
  144.       (setq lst2 (list na)
  145.             ss         (ssadd na (ssadd))
  146.             px         (acet-geom-pixel-unit)
  147.             px2         (* px 0.75)
  148.             z         0
  149.             j         0
  150.       )                                        ;setq
  151.       (while (and (< j (length lst2))
  152.                   (equal fsmode "ON")
  153.              )                                ;and
  154.         (setq fsmode #fsmode)
  155.         (setq na (nth j lst2))                ;setq
  156.         (setq lst (acet-list-remove-adjacent-dups
  157.                     (acet-geom-object-point-list na (/ px 2.0))
  158.                   )
  159.               a          (car lst)
  160.               b          (cadr lst)
  161.         )                                ;setq
  162.         (if b
  163.           (setq        lst3 (list (polar a (+ (angle b a) (/ pi 2.0)) px2))
  164.                                         ;list
  165.                 lst4 (list (polar a (- (angle b a) (/ pi 2.0)) px2))
  166.                                         ;list
  167.           )                                ;setq then
  168.         )                                ;if
  169.         (setq n 0)
  170.         (repeat        (max 0 (- (length lst) 1))
  171.           (setq        a (nth n lst)
  172.                 b (nth (+ n 1) lst)
  173.                 c (polar b (- (angle a b) (/ pi 2.0)) px2)
  174.                 d (polar b (+ (angle a b) (/ pi 2.0)) px2)
  175.           )                                ;setq
  176.           (if (not (equal c (last lst3) 0.00001))
  177.             (setq lst3 (append lst3 (list c))) ;setq then
  178.           )                                ;if
  179.           (if (not (equal d (last lst4) 0.00001))
  180.             (setq lst4 (append lst4 (list d))) ;setq then
  181.           )                                ;if
  182.           (setq n (+ n 1))                ;setq
  183.         )                                ;repeat
  184.         (setq ss2 (f_on_screen lst flt))
  185.         (setq ss4 (f_on_screen lst3 flt))
  186.         (setq ss5 (f_on_screen lst4 flt))
  187.         (if ss2
  188.           (progn
  189.             (setq n 0)
  190.             (repeat (sslength ss2)
  191.               (setq na (ssname ss2 n))
  192.               (if (not (member na lst2))
  193.                 (setq lst2 (append lst2 (list na))
  194.                       ss   (ssadd na ss)
  195.                 )                        ;setq
  196.               )                                ;if
  197.               (setq n (+ n 1))                ;setq
  198.             )                                ;repeat
  199.           )                                ;progn
  200.         )                                ;if
  201.         (if ss4
  202.           (progn
  203.             (setq n 0)
  204.             (repeat (sslength ss4)
  205.               (setq na (ssname ss4 n))
  206.               (if (not (member na lst2))
  207.                 (progn
  208.                   (setq        lst2 (append lst2 (list na))
  209.                         ss   (ssadd na ss)
  210.                   )                        ;setq
  211.                 )                        ;progn then
  212.               )                                ;if
  213.               (setq n (+ n 1))                ;setq
  214.             )                                ;repeat
  215.           )                                ;progn
  216.         )                                ;if
  217.         (if ss5
  218.           (progn
  219.             (setq n 0)
  220.             (repeat (sslength ss5)
  221.               (setq na (ssname ss5 n))
  222.               (if (not (member na lst2))
  223.                 (progn
  224.                   (setq        lst2 (append lst2 (list na))
  225.                         ss   (ssadd na ss)
  226.                   )                        ;setq
  227.                 )                        ;progn then
  228.               )                                ;if
  229.               (setq n (+ n 1))                ;setq
  230.             )                                ;repeat
  231.           )                                ;progn
  232.         )                                ;if
  233.         (setq j (+ j 1))
  234.       )                                        ;while

  235.     )                                        ;progn then
  236.   )                                        ;if

  237.   ss
  238. )                                        ;defun fastsel



  239. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  240.                                         ;select the seed ent.
  241. (defun bns_fast_sel (msg flt / filter_check na)
  242.                                         ;local function
  243.   (defun filter_check (na flt / e1 a n flag)
  244.     (cond
  245.       ((not na) (setq flag nil))
  246.       ((not flt) (setq flag T))
  247.       (T
  248.        (setq e1 (entget na))                ;setq
  249.        (setq n 0)
  250.        (while (and (not flag)
  251.                    (< n (length flt))
  252.               )                                ;and
  253.          (setq a (nth n flt))                ;setq
  254.          (if (member a e1)
  255.            (setq flag T)                ;setq then got a match for the filter
  256.          )                                ;if
  257.          (setq n (+ n 1))                ;setq
  258.        )                                ;while
  259.       )
  260.     )                                        ;cond close
  261.     flag
  262.   )                                        ;defun filter_check

  263.   (if (not (equal (substr msg 1 1) "\n"))
  264.     (setq msg (strcat "\n" msg))
  265.   )                                        ;if
  266.   (while (not na)
  267.     (setvar "errno" 0)
  268.     (while (or (and (not (setq na (car (entsel msg))))
  269.                     (equal 7 (getvar "errno"))
  270.                )                        ;and
  271.                (and na
  272.                     (not (filter_check na flt))
  273.                )                        ;and
  274.            )                                ;or
  275.       (if (equal 7 (getvar "errno"))
  276.         (princ "\n0 found")
  277.         (progn
  278.           (if na
  279.             (princ
  280.               (strcat
  281.                 "\n*Invalid* Must select "
  282.                 "LINE, POLYLINE, LWPOLYLINE, CIRCLE, ARC, ATTDEF, TEXT,"
  283.                 "MTEXT, ELLIPSE, or IMAGE object.\n"
  284.               )                                ;strcat
  285.             )                                ;princ
  286.           )                                ;if
  287.         )                                ;progn
  288.       )                                        ;if
  289.       (setvar "errno" 0)
  290.     )                                        ;while
  291.     (cond
  292.       ((equal (getvar "errno") 52)        ;enter
  293.        (setq na 99)                        ;
  294.       )
  295.     )                                        ;cond close
  296.   )                                        ;while
  297.   (if (equal na 99)
  298.     (setq na nil)
  299.   )
  300.   na
  301. )                                        ;defun bns_fast_sel

  302. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  303. (defun fs_get_current_sel (/ ss)
  304.   (if (and (equal 1 (getvar "pickfirst"))
  305.            (cadr (ssgetfirst))
  306.       )                                        ;and
  307.     (setq ss (cadr (ssgetfirst)))        ;then something is already selected so get it.
  308.   )                                        ;if
  309.   ss
  310. )                                        ;defun fs_get_current_sel

  311. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  312.                                         ;returns a list of points on screen if the first two lists do not
  313.                                         ;contain segments that intersect each other.
  314.                                         ;
  315. (defun f_on_screen (lst         flt  /           vd        p1   p2          p3   p4   lst2 lst3
  316.                     n         a    b           c        d    x1          x2   x3   x4         pnt
  317.                     j         ss   ss2  na        pnt2 dst  dlst
  318.                    )

  319.   (setq        vd  (trans (getvar "viewdir") 1 0 T)
  320.         p1  (acet-geom-m-trans (acet-geom-view-points) 1 vd)
  321.                                         ;variables p1, p2, p3, and  p4 are corner points
  322.         p3  (cadr p1)                        ; of the current view
  323.         p1  (car p1)
  324.         p2  (list (car p3) (cadr p1))        ;list
  325.         p4  (list (car p1) (cadr p3))        ;list
  326.         dst (distance (getvar "extmin") (getvar "extmax"))
  327.         lst (acet-geom-m-trans lst 1 vd)
  328.         a   (car lst)                        ;the first point in lst expressed in view coords.
  329.         c   (list (car a) (cadr a))
  330.   )                                        ;setq

  331.   (if (and (<= (car c) (car p3))        ;if the first point is on screen then add it to lst2
  332.            (<= (cadr c) (cadr p3))
  333.            (>= (car c) (car p1))
  334.            (>= (cadr c) (cadr p1))
  335.       )                                        ;and
  336.     (setq lst2 (list a))                ;setq
  337.   )                                        ;if

  338.   (setq n 0)
  339.   (repeat (max (- (length lst) 1)
  340.                0
  341.           )
  342.     (setq a  (nth n lst)                ;the first point
  343.           c  (list (car a) (cadr a))        ;the same point without the z
  344.           b  (nth (+ n 1) lst)                ;the second point
  345.           d  (list (car b) (cadr b))        ;ditto with no z
  346.           x1 (inters p1 p2 c d)                ;check for intersections
  347.           x2 (inters p2 p3 c d)
  348.           x3 (inters p3 p4 c d)
  349.           x4 (inters p4 p1 c d)
  350.     )                                        ;setq
  351.     (if        (or x1 x2 x3 x4)
  352.       (progn                                ;then intersection(s) were found
  353.         (setq dlst nil)                        ;Now build a list of sublist containing the
  354.                                         ;the distance from the intersecting point to point 'a'
  355.                                         ; and 'a' the point it's self.
  356.         (if x1
  357.           (setq dlst (append dlst (list (list (distance x1 c) x1))))
  358.                                         ;setq
  359.         )                                ;if
  360.         (if x2
  361.           (setq dlst (append dlst (list (list (distance x2 c) x2))))
  362.                                         ;setq
  363.         )                                ;if
  364.         (if x3
  365.           (setq dlst (append dlst (list (list (distance x3 c) x3))))
  366.                                         ;setq
  367.         )                                ;if
  368.         (if x4
  369.           (setq dlst (append dlst (list (list (distance x4 c) x4))))
  370.                                         ;setq
  371.         )                                ;if
  372.         (setq dlst (acet-list-isort dlst 0))
  373.                                         ;sort the list of sublists based on distance from 'a'
  374.         (setq j 0)
  375.         (repeat        (length dlst)                ;then add them one at a time to lst2
  376.           (setq        pnt  (nth j dlst)        ;the sub-list (dist, point)
  377.                 pnt  (cadr pnt)                ;the point
  378.                 pnt  (list (car pnt) (cadr pnt) (* -1.0 dst))
  379.                                         ;now get ready to create a segment
  380.                 pnt2 (list (car pnt) (cadr pnt) dst)
  381.                                         ;that is normal to the view and very long
  382.                 pnt  (inters a b pnt pnt2 nil)
  383.                                         ;check for 3d intersect to get true
  384.                                         ;location
  385.           )                                ;setq
  386.           (if (and pnt
  387.                    (not (equal pnt (last lst2)))
  388.               )                                ;and
  389.             (setq lst2 (append lst2 (list pnt))) ;setq
  390.           )                                ;if
  391.           (setq j (+ j 1))                ;setq
  392.         )                                ;repeat
  393.       )                                        ;progn then find the intersection closest to a
  394.       (setq dlst nil)                        ;else no intersections
  395.     )                                        ;if
  396.     (if        (and (<= (car d) (car p3))
  397.              (<= (cadr d) (cadr p3))
  398.              (>= (car d) (car p1))
  399.              (>= (cadr d) (cadr p1))
  400.              (not (equal b (last lst2)))
  401.         )                                ;and
  402.       (setq lst2 (append lst2 (list b))) ;setq then
  403.     )                                        ;if
  404.     (if        dlst
  405.       (progn
  406.         (setq lst2 (acet-geom-m-trans lst2 vd 1)
  407.               lst3 (append lst3 (list lst2))
  408.               lst2 nil
  409.         )                                ;setq
  410.         (if (and (<= (car d) (car p3))
  411.                  (<= (cadr d) (cadr p3))
  412.                  (>= (car d) (car p1))
  413.                  (>= (cadr d) (cadr p1))
  414.                  (not (equal b (last lst2)))
  415.             )                                ;and
  416.           (setq lst2 (append lst2 (list b))) ;setq then
  417.         )                                ;if
  418.       )                                        ;progn then
  419.     )                                        ;if
  420.     (setq n (+ n 1))                        ;setq
  421.   )                                        ;repeat
  422.   (if (and lst2
  423.            (setq lst2 (acet-geom-m-trans lst2 vd 1))
  424.            (not (member lst2 lst3))
  425.       )                                        ;and
  426.     (setq lst3 (append lst3 (list lst2))) ;setq then
  427.   )                                        ;if

  428.   (setq ss2 (ssadd))
  429.   (setq n 0)
  430.   (repeat (length lst3)

  431.     (if        (and (> (length (nth n lst3)) 1)
  432.              (setq ss (ssget "_f" (nth n lst3) flt)) ;setq
  433.         )                                ;and
  434.       (progn

  435.         (setq j 0)
  436.         (repeat        (sslength ss)
  437.           (setq na (ssname ss j))
  438.           (if (not (ssmemb na ss2))
  439.             (setq ss2 (ssadd na ss2))        ;setq then
  440.           )                                ;if
  441.           (setq j (+ j 1))                ;setq
  442.         )                                ;repeat
  443.       )                                        ;progn
  444.     )                                        ;if
  445.     (setq n (+ n 1))                        ;setq
  446.   )                                        ;repeat

  447.   ss2
  448. )                                        ;defun f_on_screen


  449. (princ)


如下定义提示 command 错误

  1. (defun tt (/ ss)
  2.   (if (and (setq ss (ssget "x"))
  3.            (not (equal (getvar "cmdnames") ""))
  4.       )
  5.     (command ss)
  6.   )
  7. )

  8. (vlax-add-cmd "tt" 'tt "tt" ACRX_CMD_TRANSPARENT)
命令: M
MOVE
选择对象: 'tt
; 错误: invalid AutoCAD command: nil
正在恢复执行 MOVE 命令。
选择对象: *取消*
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2016-7-26 17:00:08 | 显示全部楼层
查《AutoLisp葵花宝典A.chm》
(vlax-add-cmd global-name func-sym [local-name cmd-flags])
使用 vlax-add-cmd 可以将函数定义为 AutoCAD 命令,而无需在函数名中使用 c: 前缀。用它也可以定义透明 AutoLISP 命令,而对于 c: 函数,这是不可能的。
$ (defun hello-autocad () (princ "hello Visual LISP"))
HELLO-AUTOCAD
_$ (vlax-add-cmd "hello-autocad" 'hello-autocad)
"hello-autocad"

我自己没用过,好像你这个样子可以的呀
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-7-26 19:17:05 | 显示全部楼层
首先,很多选择对象提示的时候,不是COMMAND函数发起的,你不能用COMMAND接着。还有命令不能嵌套超过4层的,另外透明定义命令时候据说是不能使用COMMAND。

你本意是在提示选择对象的时候,透明执行SSGET "X"吧,下面这样写就行了

  1. (defun tt (/ ss)
  2.   (if (and (setq ss (ssget "x"))
  3.            (not (equal (getvar "cmdnames") ""))
  4.       )
  5.     (dcl-sendstring "p\n")
  6.   )
  7. )

点评

你注意看 fs 定义中,它是 (command ss)结束  详情 回复 发表于 2016-7-26 22:32
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 264个

财富等级: 日进斗金

 楼主| 发表于 2016-7-26 22:32:14 来自手机 | 显示全部楼层
newer 发表于 2016-7-26 19:17
首先,很多选择对象提示的时候,不是COMMAND函数发起的,你不能用COMMAND接着。还有命令不能嵌套超过4层的 ...

你注意看 fs 定义中,它是 (command ss)结束

点评

你透明命令全选了对象,不是要把它返回给 上级命令吗?  详情 回复 发表于 2016-7-26 22:44
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-7-26 22:44:29 | 显示全部楼层
iLisp 发表于 2016-7-26 22:32
你注意看 fs 定义中,它是 (command ss)结束

你透明命令全选了对象,不是要把它返回给 上级命令吗?

点评

不一定是 x,关键是后一句,把选集传给上级命令  详情 回复 发表于 2016-7-27 10:59
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 859个

财富等级: 财运亨通

发表于 2016-7-27 10:59:29 来自手机 | 显示全部楼层
newer 发表于 2016-7-26 22:44
你透明命令全选了对象,不是要把它返回给 上级命令吗?

不一定是 x,关键是后一句,把选集传给上级命令

点评

说得太含糊了!!!!  发表于 2016-7-27 14:22
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-5-14 10:01 , Processed in 0.351486 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表