Want new tool: Select through transparent face
-
Hi,
I want to make a plugin that lets you select and work right through 100% transparent faces, without the need to hide it or use planes. Would be very nice to indoor designers having the the transparent faces as non existing It gives a much faster look turning the room around, without the need to activate and deactivate the according plane again and again.
I was thinking on capturing the button-down and make that work on recalculating the objects behind it. Or maybe I should create a switch to make all locked object as "ghosts", you can see them but you can't select or change them. Maybe that's even better otherwize there are still edges in the way!
Any help, idea's or links to information that I need is very appreciated.
Take in mind that I have little knowledge of Ruby jet!Thanks
-
Hi:
I just voted your post up.
While I am very used to temporarily deleting a face to get at others or just scrolling right through and navigating inside a volume, or switching off layers, this would be a very nice plugin-- that is if one does not already exist and I have been asleep at the [scroll] wheel. -
Use the wireframe mode of styles
or
Use selection tool: (right to left) to forward selecting inside items (in styles transparent view)
but not (left to right) this selects everthing
or
select a edge or face then right click zoom extents and then scroll (in styles transparent view)
or
select a edge or face of inside item then left click 3 times (in styles transparent view)
Yea! this will work.
-
If you don't like section-planes, then what's wrong with xray mode ?
It would be possible to make a convoluted observer that projected rays from the camera and they hit the back-side of a face that had a transparent material applied to its back [e.g. forming a 'wall' around a room] then 'hide it' until the view sees once aging its front-face , but this seems terribly intensive and complex.
Perhaps have it toggle so pressing a key does it on/off, rather than dynamically ??
-
Could anyone help me to make this ruby "ghost" script?
How can I redirect the user-interface to the things behind an object as if it doesn't exist?thanks
-
You'll need to detect if a face has a transparent material on its back-side, then if so, if that face is in front of the camera eye projected by direction to face.plane test and then perhaps it it's within 'range' [raytests ?]: then, if that face is the front or back-side towards the camera, and then if so temporarily hide that face by a temporarily reassignment to an 'off' layer.
Remembering to iterate the model.active_entities to consider all potential faces...You also need to keep a record (perhaps as a hash ? face=>layer etc etc) of all of the changed faces so when you are done you can revert them to their original the previous [visible] layer[s]...
Also faces inside groups presently convolution of transformation and normal etc...
You big issue is determining when it's done...
I think dynamically changing the model is too heavy.
How about a toggle toolbar button?
One click any faces in front of the camera meeting these specs are hidden, another click they reappear... -
Maybe we can change the X-ray transparency to 0%(no transparency)? That would do it, but how?
-
@onidarbe said:
Maybe we can change the X-ray transparency to 0%(no transparency)? That would do it, but how?
WireFrame Mode
Sketchup.active_model.rendering_options["RenderMode"]= 0
same as:
-
The issue is not to see through [aka 'hide'] SOME faces, but also to be able to clearly see and then be able to select other faces that remain.
So my outline of a tool that selectively 'hides' some faces is feasible - provided that the back-face of those faces has a transparent material and so on...
A we placed non-visible section-plane is favorite........ -
I have just added 'select through transparent face' functionality to the X-ray view mode of my SUperPlanRuby plugin.
You can see the X-ray view mode at the start of the YouTube video “How to count your BIM doors and Windows” (
http://youtu.be/W0_Vhd1Er6M
)The attached image shows a bed Component Instance having just been selected through the transparent wall.
The selection is confirmed in the Entity Info window - but I have yet to master context processing via the right/3rd mouse button, since the onRButtonDownTool function seems to be inactive - even though onLButtonDown is working OK - anyone any ideas why?
-
There is also an approach without making changes to entities:
One could also use a repeated raytest, and let it pass through all faces whose material has an alpha value lower than a threshold, or a texture whose filename endswith "png" (however, scripters can not determine which texture pixels are transparent). Then the last face would be added to the selection.
Advertisement