[Plugin] Super Drape
-
Is it a scale issue - very small or very large objects ?
There are occasional glitches - just as with the native Drape tool - Sketchup is prone to glitchy imperfect intersection results.
Indeed, sometimes when I'm testing I can get a fail followed by uninterrupted successes! I have optimized the code as best I can to minimize the number of fails... If it fails then try repeating it immediately and it'll probably work!
Post the SKP if you can so I can test it too... -
@tig said:
There are occasional glitches - just as with the native Drape tool - Sketchup is prone to glitchy imperfect intersection results.
I often experience that the native Drape fails on edges that are not too small. edges 1m or larger even fails some times... no idea why....
-
The simplistic way my tool works is that it makes a temp-group and projects all of the vertices of the draped edges down through the 2nd form and it also makes faces.
It then intersects the temp-group with the 2nd group to 'cut' all of the faces passing through the surfaces.
It then erases all 'verticals' that are not connected to the original vertices so only the top part of the temp-group is left, it then erases all 'non-vertical' faceless edges - except those left hanging if the two forms don't fully overlap [any faceless edges that have a vertex that has a face are saved and the lone vertex is re-healed with a new face/edge].
This mean that the temp-group is now perfectly molded to the 2nd group [unless there's a fail]
Now the temp-group is lowered slightly to ensure that the 2nd group's surfaces intersect with it and then there's an intersection.
The material adding part is a different issue...
One of the reasons for a fail is that the intersected edges returned are occasionally [randomly] incomplete - this is usually a missing segment of edge that clearly should result if you intersect the temp-group and 2nd group's entities - doing it manually to an aborted set of groups will not give an intersecting line either - although the face in one clearly passes through one in the other entities set. The other issue is that the intersected edges within the modified 2nd group do not always intersect with faces [in code, unlike when you do it manually OR explode one object onto another] - however. this is [usually] rectified by intersecting the 2nd group's entities with themselves a few times! BUT again occasionally you get a loop of edges that is coplanar with a face but refuses to intersect with it - I have found that such edges have their vertices the tiniest fraction off the face so these edges won't intersect with the face, BUT attempts to uses transform_by_vectors on these vertices by the tiny distance involved so they are truly coplanar and will then intersect fails too... -
Thx Tig
Now I can make some decaling jobs ....
Great plugin.. will post a pic -
This keeps bugsplatting me
No special in Ruby console.... just down it goes
Must be doing something wrong
-
super tool thx
-
Marleus
It's one of those problems compounding...
First the letters' faces are upside down and only have back-materials - so reversing them gives a better chance of it working and getting a good material exchange [I used my FixReverseFaceMaterials tool to reverse them and flip the materials].
Next there are lots of tiny edges in the groups - I scaled everything up x10.
The letters are also at a strange angle in 3d - I flattened them.
The letters aren't placed over the sofa in plan - Top view + perspective OFF and relocated it so wholly over the sofa's seat surface!
I then did the SuperDrape and it crashed
I then did a standard Drape... and it crashed - so no worse off there then !
I then edited the letters-group and did a ExtrudeEdgesByVectorToObject, keeping the vector constrained to vertical [blue] and passing through the seat... it made an extrusion up to the seat's surface [which is much like SuperDrape does...]; I then erased the vertical edges/faces to leave the original letters and the outlines draped over the seat; selected all of the outlines and Edit>Cut; close the group edit and edit the sofa group, Edit>PasteInPlace to add the outlines - they don't all 'cut' into the surface so Select All and Intersect with Selection to force it - even then some things like the circle in the O-centers doesn't cut properly - to fix that select an edge and use a AddFaceToEdge tool...
Move the letters-group vertically down so it's nearer the sofa surface and there is less likelihood of errors in reading the materials.
Then use my earlier 'Drape Materials' tool on the selected faces of the letter-outlines now on the sofa.
They should all transfer - a couple of small triangles etc didn't - with Hidden Geometry on, sample the sofa material and paint it onto those to fix - see image...
There are just some combinations of things that fail to drape and you managed to have all of them in one test -
Thx Tig...
I think I got it now LOLI'll try on an other model ....
-
Nice......
Thanks Tig
-
what exactly is happening?
it worked only if I first used the standart drape tool from Sketchup, and then used the Super Drape over it.
-
Try it again with Hidden Geometry ON - or post the example SKP...
-
-
Looked at it and I agree it's flaky...
I can't see what the issue is immediately.
I'll investigate -
well, it worked when first using normal DRAPE and then using SuperDrape. Cant you add the code from normal DRAPE to your plugin to perform the first operation, then your plugin only does the second operation (material transfer)???
-
My 'SuperDrape' does a [supposedly better] version of 'Drape' before adding the materials...
Clearly in your case it isn't -
Here's v1.6 http://forums.sketchucation.com/viewtopic.php?p=358314#p358314
It has improved methods for ensuring full intersection of the forms... as a result of AcesHigh's feedback issue with a draped road that was longer than the mesh below it failing to form proper edges... -
Been trying this for a bit, works great in most cases, but when I tried to drape a road to a smooved group, this happened...
I'm using the latest revision as of 22/10.
Thanks~! :3
-
Can you post the SKP so that I can test it
-
-
The faces are all backwards. [see enhanced rear-face material 'blue']
I reversed them all.
The SuperDrape was weird.
I checked the size of the model for very small or very large dimensions.
The mesh is 10s of thousands of feet across!
I scaled the model to a more realistic size and re-SuperDraped, this time it's fine...
Advertisement