Display full version of the post: Joining Sets of lines automatically using hatch

idiosyn85
15.08.2008, 14:16
I'm working on a drawing comprising a seating layout for a large venue.
Usually when I'm working with these drawings each seat is an individual object born of a single block. In the drawing I'm having a problem with, each seat is a collection of four lines in a square which have no connection with one and other other than that they are touching at the corners.
 
There are thousands of seats, and I need each one to be an individual object. This is not just for counting, otherwise I'd just select them all and divide by four. Each seat needs to be an object as the drawings are used later in third party software which requires it to be so.
 
Does anybody know how I can select all visible objects in a drawing, and group only those which touch one and other, to make each one a group automatically without grouping the whole lot together?
 
Any ideas at all? Does this function even exist?
 
Thanksidiosyn852009-02-13 16:24:29

PepaR
15.08.2008, 16:04
It's note easy task tha selection of touching screens is possibley solve by some ARX, VLX addon.
 
Anyway, why you don't use the dynamic locks, where can you define min/max distance between the entities?PepaR2008-08-15 16:08:34

idiosyn85
15.08.2008, 16:14
Could you possibly explain how to use dynamic blocks for this purpose? idiosyn852008-08-15 16:20:54

PepaR
15.08.2008, 16:21
All informations about dynamic blocks you can find in this topic: Dynamic Blocks - Tutorials and informations. Don't be afraid, it's czech topics so you can find english links in this topic. PepaR2008-08-15 16:24:36

idiosyn85
15.08.2008, 16:38
I'm not sure this helps with my specific problem.
I'm not the original draughtsperson of this drawing, I just have to edit it.
I have to take the existing drawing, which comprises sets of lines representing chairs (in the forms of squares) and make those lines group together in such a way which makes each chair an individual object. It's a venue with thousands of chairs. I can't group each one individually so I need a command or set of commands which will group them for me - if one exists.
I cannot redraw the chairs either.
Is there a function within dynamic blocks or elsewhere that will do this for me, grouping the existing lines or replacing them somehow? I've looked and I can't find anything in the documentation you've reccomended.
Thanks

jansens
14.12.2008, 16:28
I think I 've come up with a possible solution to your problem (well,if it's still a problem judging from the date of the original post).
Why don't you try Pedit command selecting "multiple" in the first step,then
selecting all the individual 4-lines groups that you want to have joined.Pedit will then ask you "Convert Lines and Arcs to polylines [Yes/No]?", answer "Yes",select "Join" option and then set "fuzz distance" to zero (0).After this the program prompts "xxx segments added to xxx  polylines"
 
Each one of your chairs will have been converted to an individual polyline object.

idiosyn85
13.02.2009, 16:19
Thanks for your help but unfortunately that didn't work. This is because the lines which make the seats up are not touching in absolute terms at either end. They just appear to be. This is an annoying side-effect of the conversion process from the format they were produced in into DWG.
 
I've found the solution and to recap: The problem is that we recieve drawings of very large seating layouts which have been produced in a software other than AutoCAD and converted into DWG format. The lines which make up seats are not joined together and due to the conversion process are not absolutely connected at either end. For our purposes we need them to be single objects. So we need to automatically group each set of 4 lines which make up the rectangular seat but we need each one to be a singular object. We'd prefer not to have to redraw huge seating layouts due to time constraints.
 
To automatically join almost touching lines (and/or touching if you like) in a drawing within AutoCAD 2009 and likely other versions: (For the purpose of simplicity I'll refer to the lines I want to join as seats).
 
Draw a rectangle around a group of "seats".
Type: "Hatch" > [return]
Click: Add: Pick points
Click: an area outside of a "seat" but within the rectangle
If you recieve any warnings, confirm that you wish to proceed (or otherwise if that be the case)
Click: OK to create the hatch.
 
This forms a sort of a stencil around the "seats"
 
De-activate the lines which make up the "seats", or just move the hatch away from them.
Select the hatch.
Type: "Hatchedit" > [return]
Click: Recreate Boundary
Click: Polyline
Choose: "Y" (for assosiating hatch with boundary, not important)
Click: OK
Delete the hatch, and the rectangle.
All "seats" are recreated as singular polylines.
 
Simple
 
Cheers
 
 idiosyn852009-02-13 16:21:22