I am having an issue where I have a sink component with named blocks of each cabinet in it and I have set up 4 typical conditions of most of the same items (i.e. a left configuration version and a right configuration version). I can bring in 1 of the components from the components tray, but when I bring in another one it bug splats.
The only way I found around this is to open a blank file and insert the 2nd file explode it then copy/paste it back in to my main file. I have tried to rename the files and lately remake the all the files. Each of the 4 file I create now crashes when I close the SketchUp file use to create them even after I purge/fix the model.
Donāt know what I am doing wrong at this point and need help.
If a component SKP is made by saving a whole model that has been geo-located, then it will try to snap to the origin when it is first inserted into the model, and not allow the user to place it first.
This can ācross-threadā things in the modelās database - especially if there are also other geo-located instances and/or the model itself is geo-locatedā¦
To address this issue - never save a model as a component SKP if it is geo-located.
Saving a component outside a geo-located model will avoid this problem.
If you have obtained a component SKP from someone else be wary.
Open its SKP and check its Model Info, and ensure itās not been geo-located.
If it was, then change that and save.
Then when you use it in another model itāll insert properly with no issues like thisā¦
Yea, you can PM me. My day job isnāt forums, but if itās a quicky like these tend to be, thereās enough (boring) meetings in a day that I can chase some down.
TIG,Thanks for the reply
i created the individual models in separate files and then put them together in one Sketchup file. From there i create the components and do a āsave asā to put it in a file folder. I have done this with other models in past versions and have not had this problem.
How do check to see if the model is geo-located and turn this function off?
As a note, if you saved the component out of a larger model that was geo-located, you could have unwittingly geo-located that component. Also, check your default template to make sure it doesnāt have a location set.
Notice that a file created and then imported this this way is also doubled wrapped which can create other problems.
Assuming the information provided by the Bug Splats is correct and the crashes are the result of geo-location, itās worth investigating the child components on their own.
Iām not sure if itās possible for a Ruby script to churn through all of the components nested in the parent to look for and clear geo-location. Maybe @eneroth3 or @TIG would know. It would be interesting if itās possible to report which component is geo-located if there is one so youād know before you use it in any future models.
This code snippet reports on the GeoReferencing attributes for all Components in the Model and the Model itself.
It will be reset āfalseā if itās currently set ātrueāā¦
To use it copy/paste it into the Ruby Console.
puts
model = Sketchup.active_model
model.definitions.each{|d|
puts "Definition: #{d.name}"
ads = d.attribute_dictionaries
if ads && ad=ads["GeoReference"]
if ad["UsesGeoReferencing"]
puts "GeoReference:UsesGeoReferencing - currently set 'true' - now reset to false."
ads["GeoReference"]["UsesGeoReferencing"] = false
elsif ads && ad=ads["GeoReference"] && ! ad["UsesGeoReferencing"]
puts "GeoReference:UsesGeoReferencing - currently set 'false'."
end
elsif ! ads || ! ads["GeoReference"]
puts "GeoReference is NOT set up."
end
}
puts
ads = model.attribute_dictionaries
if ads && ad=ads["GeoReference"]
if ad["UsesGeoReferencing"]
puts "Model: GeoReference:UsesGeoReferencing - currently set 'true' - now reset to false."
ads["GeoReference"]["UsesGeoReferencing"] = false
elsif ads && ad=ads["GeoReference"] && ! ad["UsesGeoReferencing"]
puts "Model: GeoReference:UsesGeoReferencing - currently set 'false'."
end
elsif ! ads || ! ads["GeoReference"]
puts "Model:\nGeoReference is NOT set up."
end
puts
I am new ro Ruby scripting,
So this ran through the file and set all the models in the file to False?
Is there a way for it to know which of the file(s) are the problem so i can correct the original file?