pdsewell Posted April 30, 2010 Posted April 30, 2010 I have a drawing with the outlines of the roofs of buildings. Each roof is a rectangle at a different elevation made of separate lines, and I want to join them into one polyline for each roof (as in image 1). Several of these roofs overlap at the edge - for instance where two buildings abut but have roofs at different heights. So, to join the lines into polylines I run pedit, choose all of them, and choose join. The problem is that when I join two rectangles that overlap along one edge, the rectangle at the higher elevation moves to the same elevation as the lower rectangle. This is bad - the whole point of this exercise is to have rectangles at different elevations. Why does pedit change the elevation when lines overlap like this? And how can I prevent this? Quote
alanjt Posted April 30, 2010 Posted April 30, 2010 For lines/LWPolylines/etc to be joined, they must be collinear. Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 Uhh, right. I think you misunderstand my question. The lines join. The problem is that pedit changes the elevation of the lines as it joins them. Also, the first and third images above are axonometric - at a tree dimensional angle. The second is in plan - from directly above. Quote
ScribbleJ Posted April 30, 2010 Posted April 30, 2010 Polylines cannot join unless they are at the same elevation as alanjt said (colinear). Maybe 3Dpolyline will achieve your objective. They can have multiple elevations at each vertex. Quote
ScribbleJ Posted April 30, 2010 Posted April 30, 2010 Uhh, right. I think you misunderstand my question. The lines join. The problem is that pedit changes the elevation of the lines as it joins them. Also, the first and third images above are axonometric - at a tree dimensional angle. The second is in plan - from directly above. alanjt didn't miss your point at all. He was pointing out a rule of LWpolylines that must be followed if you want them to join. In order for pedit to join them their elevations had to be changed. He was answering your initial question of: Why does pedit change the elevation when lines overlap like this? Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 You guys aren't listening to me. The polylines join. The problem is that where two rectangles overlap, the higher rectangle sinks to the elevation of the lower rectangle. So I end up with two closed, joined polylines at the same elevation when I want two closed, joined polylines at different elevations. Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 "In order for pedit to join them their elevations had to be changed." So, pedit automatically changes the elevation of polylines to join them? Why? How do I turn this off? It seems like if I have two rectangles, overlapping on one edge, broken into lines, and I try to join the lines, it should just join the ones at the same elevation. Why doesn't it function this way? Quote
ScribbleJ Posted April 30, 2010 Posted April 30, 2010 You guys aren't listening to me. The polylines join. The problem is that where two rectangles overlap, the higher rectangle sinks to the elevation of the lower rectangle. So I end up with two closed, joined polylines at the same elevation when I want two closed, joined polylines at different elevations. Oh there is no doubt we are listening. The problem is you do not seem to be understanding the answer. You cannot have two PL's joined together at alternate elevations. Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 You cannot have two PL's joined together and alternate elevations. I understand that, and I don't want two PL's joined together at alternate elevations. My question is, how can I convince pedit to join only the lines at the same elevation rather than changing the elevation and joining adjacent rectangles together. Do you understand what I mean - that pedit actually moves the line from one elevation to another elevation in order to join it? I cannot simple manually join them - I have hundreds of rectangles. Quote
ScribbleJ Posted April 30, 2010 Posted April 30, 2010 You can't. Pedit is a very old command with limited capabilities and will only do what it was designed to do. Two things have to happen before a PL can be joined. One you already know about the other is that all joining vertices have to actually have the same xy coordinate. So if the elevation and the joining vertices xy coordinates do not match and are not colinear they will not join. If you happen to have access to AutoCad Map 3D drawing cleanup will give you the desired results you are looking for. Quote
ReMark Posted April 30, 2010 Posted April 30, 2010 I have a question. When you joined four lines to create a roof outline did you check to see what elevation each line was at before proceeding? Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 Gotcha. Thanks for your help. I don't think I have access to Map 3d, but I do have 3ds max. Is there anything there that will join lines without changing their elevation? Maybe some context will help. I have sketchup models of several cities and I am trying to convert them to DEMs to perform GIS analysis. My thought was to export SKP to DWG, choose all the rooftop lines, join them into polygons, open them in GIS, and use their elevation attribute to create a raster that would function like a DEM. Does anyone know a better way to convert SKP to DEM? Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 When you joined four lines to create a roof outline did you check to see what elevation each line was at before proceeding? I didn't specifically check, but the lines came from a sketchup file where the roofs are represented by horizontal faces. So I know the lines are all at the same elevation and that the endpoints overlap. Quote
ReMark Posted April 30, 2010 Posted April 30, 2010 And you know for a fact that the faces were actually horizontal? Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 Yes - for all of the lines Delta Z = 0 Quote
ReMark Posted April 30, 2010 Posted April 30, 2010 Would you be willing to post the actual dwg file (or a zip version) for someone to experiment with? Quote
ScribbleJ Posted April 30, 2010 Posted April 30, 2010 Gotcha. Thanks for your help. I don't think I have access to Map 3d, but I do have 3ds max. Is there anything there that will join lines without changing their elevation? There may be but it has been a very long time since I used 3DS Max. I'm sure a lot has changed since then. Try the 3DS Max forum to see. Can't hurt to try. Quote
pdsewell Posted April 30, 2010 Author Posted April 30, 2010 I'd be happy to. I taken a few blocks of the city and saved the file down to version 2000: https://docs.google.com/leaf?id=0B5Cso6G7Pa9HZDIyZDBjYmYtYTQzNy00OTZhLWFjZGMtM2Y0YjhlZTgxZGYz&hl=en I colored the block shown above cyan. You should be able to see that joining the whole block changes the height of the highest roof. Quote
alanjt Posted May 1, 2010 Posted May 1, 2010 I have to admit, I couldn't stop laughing reading this thread. It was like watching Abbot and Costello's Who's on First? Sorry I wasn't around to follow-up my original answer (Calvin took care of it though), but my little girl and I went to the grocery store and have been playing with the foam swords we found in the toy section since we got home. Quote
pdsewell Posted May 1, 2010 Author Posted May 1, 2010 have been playing with the foam swords we found in the toy section since we got home I have to say, that sounds like much more fun than fighting AutoCAD and ArcGIS... Maybe if I had a foam sword AutoCAD would respect me a little more? Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.