[Plugin] Super Drape
-
TIG, interested in adding functionalities for making a Super Ultra Drape???
basically:
1 - when drapeing, you simply projects the line of a surface over a 3d mesh. The ending result COMPLETELY follows the curvature of the mesh, just adding those lines over the mesh.
2 - when stamping, you add a completely flat shape to a mesh. The mesh adapts to the stamp and becomes flat.
What if you want a compromise? Like for example, to project a road over a mesh? Lets say you have a road, and the road is 20cm below the curbs/sidewalk level.
Why not project that 3d road over the mesh, and the mesh ALREADY has the road areas becoming 20cm lower than the curb/sidewalks areas?
What if you want the road to climb a small hill (that exists on the mesh) but you dont want the road to be as steep as the mesh? You already have the road steepness. Normal drape would be useless. It would just project the road lines over the existing (very steep) mesh. Drape would make the road flat. Ideal solution would be to project the road onto the mesh, but KEEP the road Y axis curvature, making the mesh adapt (like when stamping) to the road.
So, TIG, do you think something like that would be possible? Thanks very much!
-
Why not just use InstantRoad.rbs?
-
1 - instant roads is paid.
2 - these extra functionalities for drape can be used for other things besides roads
3 - in my specific case, Instant Roads is of no use. I must drape a DWG road project over a mesh. Instant Roads is too limited.
-
AcesHigh,
Joint push pull can be used to lower the mesh a given distance to account for curbs.@unknownuser said:
What if you want the road to climb a small hill (that exists on the mesh) but you dont want the road to be as steep as the mesh? You already have the road steepness.
How do you already have the road steepness? Do you have a road profile or 3D polyline from CAD that you're working from?
I guess I don't understand how you envision this working. How would the plugin know that you want a certain segment of the road to follow the existing grade, and a different segment to be cut into a hill at a flatter grade? What about the road in a fill section? CAD programs solve this by utilizing a combination of horizontal alignment and profile data, typically based on stationing. Do you want to create something similar?
Don't get me wrong, I think what you're asking for is great. I use SU for this type of work too. I'm just trying to figure out what form you see it taking.
-
@unknownuser said:
AcesHigh,
Joint push pull can be used to lower the mesh a given distance to account for curbs.yes, and I have used it. However, its much harder to select a heavily triangulated area of the mesh to "joint push pull", than it would be to select the same area in a flat drawing, push pull it lower, and drape it, already lowered, into the mesh below.
@unknownuser said:
How do you already have the road steepness?
lets say you already drew it. With polylines.
@unknownuser said:
I guess I don't understand how you envision this working. How would the plugin know that you want a certain segment of the road to follow the existing grade, and a different segment to be cut into a hill at a flatter grade?
no segment will follow the existing grade. Imagine a STAMP but following the different heights of the profile, instead of stamping flat.
-
-
Awesome plugin, I can hardly wait to get home and use it!
Thanks TIG!
-
It does not work fine for me, Mac issue?
ruby console says:"WARNING: make_unique is a deprecated methodof Sketchup:Group"
-
gilles
The "WARNING: make_unique is a deprecated methodof Sketchup:Group" is the standard 'warning' that Sketchup produces when you copy a group and make it unique - SuperDrape copies the 1st 'drape' group and changes to get the 'projection' onto the 2nd group [this copy is erased on completion] - there should only every be one instance of a group, BUT it is possible to make copies, just like you can with a component [then changing any one changes the others]. Sketchup could ensure this uiqueness happens, but it just doesn't; so then there are two instances of the group; so that the original is unaffected by the impending changes the available
group.make_unique
method is used - for some daft reason the 'deprecation' warning was never removed by Google. It is needed and should not be 'deprecated' - which means it is no longer needed - BUT it is
[So don't worry about it!]Now onto your test SKP. It works fine for me AFTER I sorted out the problem with the 1st group's faces - they all face down and the materials are applied to the backs - therefore the draped result is in the default material as that's what the faces have. The usage notes do say the faces should be 'up'...
I used FixReversedFaceMaterials to flip the from and back materials and reverse the faces - it then works OK... With very small or very large forms there are occasional rare glitches where a small face loses materials - these are easily healed by sampling an adjacent corectly colored facet and painting the missed one... -
@thomthom said:
@aceshigh said:
1 - instant roads is paid.
And you want TIG to make a version for free..?
I am not asking for a free Instant Roads. Its not even remotely similar, imho. The fact Instant Roads is paid was only 1 reason. The real problem is that its paid and it doesnt even really matches what I need (which is to use a DWG road which cant be copied by Instant Roads).
As far as I understand, Instant Roads kinda works like you having a window and setting the width of the lanes, sidewalks, central garden (when its avenues), etc. Very flexible and very easy for some things. But if you need to make a road a bit different from what the program allows, its already not an useful plugin. And from everything I read, in my case (and probably many others) Instant Roads would not be useful as some better drape plugins.
Besides, it can only be used for... ROADS!
a drape pluging that had these other functions would be used for many other functions, by EVERYONE. Not only for roads, but for anything needing work with meshes...
also, I dont want him to do it. He has no obligation to help me or anyone else (or you for that matter, since you also make some incredibly amazing plugins). I would "like" if he did it. But I am already super happy with what he already did with Super Drape. Its already some amazing improvement over normal drape.
ps: I wouldnt even be benefited from this drape plugin, as for using it to make roads. Yes, I got a work right now where I must make a road, but the deadline certainly expires long before TIG would ever be able to get such advanced drape functionalities ready. And this is the first road work I ever got and probably the last.
thus, an Ultra Drape would probably benefit more other people than myself, unless I get another road work (hardly)... OR, I use it for other functionalities (which I am sure will exist when dealing with meshes, but I cant think right now).
Sorry for the long text TomTom, but I just dont want to be known as a cheapass bastard for not wanting to buy Instant Roads
-
another attempt.
-
Try it with hidden geometry 'on' and the 1st group as near to the 2nd group as you can - it must be >1mm above it !
I'm thinking about relocating the 1st projected group down to the minimum distance above the 2nd to avoid glitches in the next release***.
What's the total size of the draped face ?
Why make the draped face bigger than the 2nd group ? [it shouldn't matter]
Can you post the new SKP... ***your SKP would help testing... -
Here's v1.4 http://forums.sketchucation.com/viewtopic.php?p=358314#p358314
The 1st picked group is temporarily moved very near to the 2nd to minimize material transfer errors.
The original is now left unaffected when there are group.material and there are default faces within it and the user chooses to use then in the draped faces...
The earler v1.3 made these changes...
The new group.copy code introduced in v1.2 is now recast to avoid clashes with rogue-scripts that might mess it up.
Multi-level/overlapping faces in the draped-group are now allowed [previously only one level was draped].The earlier v1.2 changes were...
Following Charly's feedback it now spots if you have a material applied to the draped group and that there are some faces inside the group without a material [they will appear to have the group's material, even when they are actually in the default-material] - you can then choose Yes|No to use that group.material for any draped faces that would otherwise have the default-material.
The intersecting is even more robust.
All underlying faces inside the same group should now be unaffected by the draping [i.e. any faces below the draped-on topmost faces].
Draped faces that partially overlap the edges of the draped-on group's faces are now neatly trimmed to them.
Groups with convoluted transformations [rotated in 3d, scaled etc] should no longer cause issues with the draping.Feedback please...
-
thanks for this nice plugin
but i need tuto for this plugin plzzzzzz -
@robert111 said:
thanks for this nice plugin
but i need tuto for this plugin plzzzzzz
Reread the instructions...
It's not much different from the native Sandbox Drape tool... but it replicates the 1st group's materials onto the 2nd group's surfaces... -
hello sir tig. thank you very much for this plugin.
I found a small error. please see the file
-
I broke the newest version.
It was interesting to watch it filling in the faces. It looks like it just skipped a few.
-
Currently looking at an update...
Watch this space... -
Just a bit of feedback.
I draped a simple sphere onto a flat surface at different rotations and got some strange results. I scaled up by 10 to see if it was just a small face issue and still odd.
I'm not sure that this is something anyone would do with this plugin, but thought I should show you anyway.It's strange how sometimes the drape goes all the way through to the bottom surface and other times not, and on the large version it blew out the top surface.
-
Thanks Box... I'm looking at a few bug fixes - which come more from Sketchup's limitations with intersect than my code itself
Watch this space...
Advertisement