List used shapes?

I have several old drawings where there are objects that are drawn as shapes and not as blocks. Is there any method to identify where these are?

Comments

  • (command "_.zoom" "_object" (ssget "_X" '((0 . "SHAPE"))) "")
  • Thanks!
    That command is useful to determine if there is such shape or if it does not exist any at all.
    It would have been good if you could see that, for example, shape K19 is in layer 25 and so on...
  • Use Quick Select to select the shapes and then invoke the List command.
  • Use Quick Select to select the shapes and then invoke the List command.

    Eh?
    Explain how to do to that.

  • Anthony Apostolaros
    edited December 2022
    Mikael63 said:

    Use Quick Select to select the shapes and then invoke the List command.

    Eh?
    Explain how to do to that.
    It's difficult to explain in words, but important to know about. See video:
    QuickSelect - BricsCAD
    Two clicks will tell you if there are any Shapes in the file, and two more will select & highlight all of them.

    If you do it a lot, you could make a custom tool that selects all Shapes.
    I've never used Shapes, but judging from Roy's post I assume it would be:
    (ssetfirst nil (ssget "_X" '((0 . "SHAPE"))))
    or
    (defun c:ShowShapes () (ssetfirst nil (ssget "_X" '((0 . "SHAPE")))))

    The LIST command lists properties of all selected entities.
  • ALANH
    edited December 2022
    Try this shows the name of shapes can get more properties.

    (defun c:dumpshape ( / ss x)
    (setq ss (ssget "X" '((0 . "SHAPE"))))
    (if (= ss nil)
    (princ "\nno shapes ")
    (progn
    (repeat (setq x (sslength ss))
    (princ (strcat "\nshape name " (cdr (assoc 2 (entget (ssname ss (setq x (1- x))))))))
    )
    )
    )
    (princ)
    )
    (c:dumpshape)
  • ALANH said:

    Try this shows the name of shapes can get more properties.

    (defun c:dumpshape ( / ss x)
    (setq ss (ssget "X" '((0 . "SHAPE"))))
    (if (= ss nil)
    (princ "\nno shapes ")
    (progn
    (repeat (setq x (sslength ss))
    (princ (strcat "\nshape name " (cdr (assoc 2 (entget (ssname ss (setq x (1- x))))))))
    )
    )
    )
    (princ)
    )
    (c:dumpshape)

    Thanks!
    This is good enough for me!
  • Express tools has a SHP2BLK command, which will convert shapes to blocks. And with BricsCAD V23, Express tool commands are now built-in.

    Regards,
    Jason Bourhill
    BricsCAD V23 Ultimate
    CAD Concepts
  • Express tools has a SHP2BLK command, which will convert shapes to blocks. And with BricsCAD V23, Express tool commands are now built-in.

    Regards,
    Jason Bourhill
    BricsCAD V23 Ultimate
    CAD Concepts

    Yes, see https://forum.bricsys.com/discussion/37896/shp2blk
    Does not work...
  • Pretty sure this is problem line WMFIN not supported.
    (command "_.WMFIN" FIL UPLFT "2" "" "")