Resnap entire drawing


#1

I have imported an AutoCAD 2D house (Metric, snapped to 5cm) into Sketchup and made it into a 3D drawing by using push/pull, that bit worked very easily and in no time I had a 3D house, (Sketchup is set to snap 5cm units, metres, 0.00). Now I am adding the details but my lovely drawing is slowly collapsing and loosing its faces. I am very experienced with CAD and I know exactly what the issue is, some of the lines I imported are a fraction of a mm out.
Please, is there a method (or a utility) I can obtain that will go through my entire drawing and move every point by a mm here and there to realign it back to the nearest 5cm.
I have scoured the net for hours, wIth AutoCAD or 3DsMax its easy, you click on the end of the line, zoom in and just drag the end and it resnaps to your snap setting, with Sketchup you cannot do this.
Please help, I am trying to be an open minded 3DsMax to Sketchup convert but…


#2

Not sure if there is a plugin to help you out but suggest

1] avoid extruding autocad entities into 3d SU entities , best to create pure SU objects

SU is great at editing complex autocad drawings, I usually import the dwg, delete all the dwg layers, flatten it [ TIGS brilliant Drop Vertices plugin is great for this] and lock it, then proceed as below]

2] use the rectangle tool to create true 90 degree corners in 2d and pull that shape up into walls. I then offset the verticals to create walls perpendicular to the first. then everything is true 90 degrees, by all means set your snap in SU to 5cm, that will be even quicker.

Re fixing your current work this might help

To check if your lines are on axis you can set your styles to show all linework in red, green or blue to match your axis

helps you identify which ore off axis.

see below

regards


#3

Thanks GSharp, in Retrospect, you are correct and if I had to do it again, that’s exactly what I would do, the problem I have now is that I have put hours of work in that I dont want to repeat. I have been using the ‘colour the axis’ Style which as you say is very useful for the obvious but there appears to be a bug in SketchUp where it is possible to have all the axis show in green, red and blue but still no face and of course all the measurements indicate ‘spot on’. It is only when I change the units to 0.000 and remeasure it now shows 10.001 or 9.999 instead of 10, changing the units back to 0.00m and measuring then shows 10.00. Somehow the internal storage precision of points does not always represent the algorithms that are used internally to decide whether something lines up or not. This is why I really need a utility or plug in to readjust the drawing.


#4

I have run into the ‘by axis’ inaccuracy as well a few years ago. There’s some ‘secret’ margin it allows while still showing ‘on axis’. I don’t use it anymore.

Internally, SketchUp uses inches as unit. So if you type 10m, internally its stored a X.y inches. My way to prevent dimension errors as much as possible, is to use mm as unit and precision set to 0. This works fine for me in my daily work as an architect.

As far as I know (having used SketchUp for almost 10 years now), there’s no plugin that re-snaps your drawing to some grid.
Maybe you can just make a separate drawing for your details and insert them into this drawing as a component? That way you can work in the detail drawing using the 0 mm precision, while not having to re-model the house. Just an idea.


#5

There may be a common misconception involved here: the units setting in Model Info affects how values are formatted for display, it does not have any effect on the actual values themselves. Setting 0mm units won’t change any SketchUp calculation in any way, it will just cause it to drop the fractional part when displaying dimensions etc.


#6

Thanks for the clarification @slbaumgartner. Very good to know.


#7

Paul.

TIGs Drop vertices plugin or something similar might help


#8

Thanks to everyone, all this is very interesting, I have been playing all day with a sacrificial drawing I have created. For sure, the measurement that is displayed is rounded from the internal measurement. SketchUp seems to use some kind of internal tolerance to decide when lines join, what is a right angle, what is a face, do lines intersect, is an edge on one of the axis etc. Sadly they do not appear to use the same procedure!
One thing for sure is that once this happens your drawing is forever useless and hours and hours of attempting to move lines 1mm just collapses the drawing even more. The only solution is to start again.
I know what I did wrong, my AutoCAD drawing drawing contained hundreds of polylines, these all have a finite thickness, what SketchUp import 2017 does is to import Polylines as two lines, either side of the line centre (maybe 1mm apart!). I have since gone back to my AutoCad drawing, spent 1 minute selecting all–>Properties–>Global line width=0.00, reimporting, works great.
This is a stupid bug in SketchUp, what it SHOULD DO is for every line it imports from AutoCAD, it should call the same procedure that determines what an edge is etc and then place the line in the drawing using that result!


#9

I have some code to “snap” vertices to the nearest inch - it’s not a difficult function to implement. I just never found a good reason to use it given SketchUp’s Measurements box and inference… (It destroys arcs and cirlces, though.)