sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    How to show "hidden" geometry as actually visible?

    Scheduled Pinned Locked Moved SketchUp Discussions
    sketchup
    15 Posts 7 Posters 11.5k Views 7 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • TIGT Offline
      TIG Moderator
      last edited by

      I strongly recommend that you use a set of layers to control the visibility of objects - assign layers to containers [groups/component-instances] not 'raw' geometry.
      Using hide/unhide too much can lead to confusion - as you've found...
      Especially if they are say faces associated with still visible edges - the face will vanish if the edges is erased and you won't notice it because it was hidden.
      If you have hidden an object then its 'ghost becomes visible if View > Hidden Geometry is toggled ON.
      You can now select it like any other object - multiple selections are possible if you hold Ctrl or use a fence etc.
      The right-click context-menu has a Unhide option [as well as the Hide one] - then the selected objects are no longer hidden.
      Also Entity Info lists the selections 'hidden' state and you can tick/untick the option to change them all en mass too...
      To unhide all current active entities [assuming you have a confused mess!] you can copy/paste this one liner into the Ruby Console + <enter> to make all active entities visible

      Sketchup.active_model.active_entities.each{|e|e.hidden=false if e.hidden?}
      

      If objects inside groups or components have been hidden you need to run this whist in the edit context of that container. Use with care because some 3rd-party components etc might contain hidden edges on purpose so that where they abut [say a mirrored instance of itself] there are no visible edges at the junction...

      TIG

      1 Reply Last reply Reply Quote 0
      • M Offline
        muhku
        last edited by

        Thanks for your concern, and the reply, TIG... however it doesn't answer the question. The model which I'm doing is as such: I have a lot of groups on the same layer and a lot more to come. I'm modeling a part of a city and so all buildings must be on the same layer, and there's a lot of them. I find it useful to group&hide the buildings which are ready, because it saves on comp resources thus making modeling faster.

        You are correct in saying that hiding things can cause a lot of mess, but not if you only hide complete groups (in this case, blocks in the city). It saves a lot of time compared to changing the layer of the object each time in entity info... and you can bring them up with a hotkey if you need. It's pretty simple & fast, and when done like this, there is no mess in my model. Would be a lot more messy and complex if I used layers for this...

        What I'm actually looking for is just a way to control what hidden objects look like when the "show hidden geometry" button is on. If there is such a way.

        Now that I said it like that it does sound a bit trivial. πŸ˜„ But if there is such an option, it would be useful.

        1 Reply Last reply Reply Quote 0
        • TIGT Offline
          TIG Moderator
          last edited by

          When hidden geometry is set to be seen in 'View > Hidden Geometry' it will always be a 'ghost' - this is not changeable.

          Hidden objects are remembered in Scene-tabs, so you could think about using those... BUT I suspect it'd get unwieldy.

          IF you made a set of layers paralleling your main layers - e.g. BLDG and BLDG-HIDN; and have the '-HIDN' ones all set 'OFF'... then you can quickly 'hide' an object by selecting it and assigning it to a '-HIDN' layer - via 'the Entity Info' dialog OR even quicker using the 'Layers' toolbar dropdown list [e.g. if you put the layers-toolbar in the top-bar].
          You can easily view/hide objects on any '-HIDN' layer by switching it on/off, in the Layers Browser pane.

          You can also use Scene-tabs to control layers' visibility.
          Make two that only changes layers and doesn't affect camera, style etc - that can have the '-HIDN' layers 'ON' and 'OFF' respectively.
          Then depending on which Scene-tab you click the objects will appear in full Technicolor... or become hidden...
          Your main Scene-tabs can of course have whatever views, layers etc you want, and clicking on those brings whatever you want into focus/visibility... Use the other tabs whilst modeling...

          TIG

          1 Reply Last reply Reply Quote 0
          • M Offline
            muhku
            last edited by

            @tig said:

            When hidden geometry is set to be seen in 'View > Hidden Geometry' it will always be a 'ghost' - this is not changeable.

            All right. Thanks for the info. Could this be manipulated with a script though? I didn't find any which do this.

            @muhku said:

            IF you made a set of layers paralleling your main layers - e.g. BLDG and BLDG-HIDN; and have the '-HIDN' ones all set 'OFF'... then you can quickly 'hide' an object by selecting it and assigning it to a '-HIDN' layer - via 'the Entity Info' dialog OR even quicker using the 'Layers' toolbar dropdown list [e.g. if you put the layers-toolbar in the top-bar].
            You can easily view/hide objects on any '-HIDN' layer by switching it on/off, in the Layers Browser pane.

            You can also use Scene-tabs to control layers' visibility.
            Make two that only changes layers and doesn't affect camera, style etc - that can have the '-HIDN' layers 'ON' and 'OFF' respectively.
            Then depending on which Scene-tab you click the objects will appear in full Technicolor... or become hidden...
            Your main Scene-tabs can of course have whatever views, layers etc you want, and clicking on those brings whatever you want into focus/visibility... Use the other tabs whilst modeling...

            There's some ideas... I could to either of these, but it seems that in both cases I would lack the ability to do this with hotkeys, since it doesn't seem to be possible to add a shortcut to toggle a specified layer's visibility. We're talking about quite fast modeling, and I would have to repeat this procedure a lot, so it counts. πŸ˜‰

            I could set up 2 scenes and use the next and previous scene hotkeys to cycle between them. Then I would need to get rid of the camera rotation thingy which SU likes to do when you change scenes. And again, no hotkey for assigning an object to a specific layer...

            1 Reply Last reply Reply Quote 0
            • TIGT Offline
              TIG Moderator
              last edited by

              You can't affect the appearance of 'ghosted' hidden objects when view>hidden-geometry is ON - even in code.

              If you want a hot key to move selected objects onto 'Hidden' layers then a simple few line script that adds a Plugins submenu it is straightforward

              module MUHKU
                    def self.onto_hidden(name)
                      model=Sketchup.active_model
                      layer=model.layers.add(name)
                      layer.visible=false
                      model.start_operation("Onto Layers OFF = "+name)
                      model.selection.to_a.each{|e|e.layer=layer; model.selection.remove(e)}
                      model.commit_operation
                    end
                    def self.layer_on(name)
                      model=Sketchup.active_model
                      model.start_operation("Layer ON = "+name)
                      layer=model.layers.add(name)
                      layer.visible=true
                      model.commit_operation
                    end
                    submenu0=UI.menu.add_submenu("Onto Layers OFF...")
                    submenu0.add_item("HID0"){self.onto_hidden("HID0")}
                    submenu0.add_item("HID1"){self.onto_hidden("HID1")}
                    ### etc
                    submenu1=UI.menu.add_submenu("Layers ON...")
                    submenu1.add_item("HID0"){self.layer_on("HID0")}
                    submenu1.add_item("HID1"){self.layer_on("HID1")}
                    ### etc
                    ### add more submenu items as needed
                    ### shortcut to these as desired.
                  end#module
              

              TIG

              1 Reply Last reply Reply Quote 0
              • M Offline
                muhku
                last edited by

                Ok. Thanks TIG!

                1 Reply Last reply Reply Quote 0
                • Dave RD Offline
                  Dave R
                  last edited by

                  I know this doesn't answer your question about the appearance of hidden geometry but I guess you've got that answer. The way you've described what you are doing makes me wonder; are you leaving Layer 0 active, drawing your buildings there and then associating them with your "Buildings" layer? I kind of doesn't sound like it. If you are working that way, you could leave your "Buildings" layer turned off and when you associate a new building with that layer, it'll be made invisible and out of your way.

                  Etaoin Shrdlu

                  %

                  (THERE'S NO PLACE LIKE)

                  G28 X0.0 Y0.0 Z0.0

                  M30

                  %

                  1 Reply Last reply Reply Quote 0
                  • A Offline
                    ArCAD-UK
                    last edited by

                    Not sure if this would help but if you go to Window> Model Info > Components you can automatically fade or hide other components/ groups while you edit a particular component. If each building was a component then the rest of the buildings could be made to disappear while you worked on it, once you finished editing everything reappears.

                    I have the hide check boxes assigned to hot keys so I can turn on other components for reference and then turn them off again while still editing.

                    1 Reply Last reply Reply Quote 0
                    • TIGT Offline
                      TIG Moderator
                      last edited by

                      β˜€ ...And of course you can use 'Hide Rest of Model' and/or 'Hide Similar Components' using the 'Component Edit' menu items - which can both be given shortcuts...
                      A very useful toggle to hide things that are in your way... OR to show hidden things that you might want to snap-to...

                      TIG

                      1 Reply Last reply Reply Quote 0
                      • M Offline
                        muhku
                        last edited by

                        Hi, golden thanks for the tips & suggestions! I really appreciate this. I never realised that you could hide the rest of the model while editing or tag doing that to a hotkey. That really smoothened things out and was exactly most of what I was doing with the hiding. πŸ˜„

                        This looks like a good forum, I'll be lurking around... πŸ˜›

                        1 Reply Last reply Reply Quote 0
                        • K Offline
                          Kenny
                          last edited by

                          You can also of course use the outliner (Window-Outliner) to quickly select/hide/unhide objects. Although you probably knew that already!

                          http://www.townscapesolutions.co.uk/

                          1 Reply Last reply Reply Quote 0
                          • R Offline
                            Roni Estein
                            last edited by

                            @tig said:

                            I strongly recommend that you use a set of layers to control the visibility of objects - assign layers to containers [groups/component-instances] not 'raw' geometry.
                            Using hide/unhide too much can lead to confusion - as you've found...
                            Especially if they are say faces associated with still visible edges - the face will vanish if the edges is erased and you won't notice it because it was hidden.
                            If you have hidden an object then its 'ghost becomes visible if View > Hidden Geometry is toggled ON.
                            You can now select it like any other object - multiple selections are possible if you hold Ctrl or use a fence etc.
                            The right-click context-menu has a Unhide option [as well as the Hide one] - then the selected objects are no longer hidden.
                            Also Entity Info lists the selections 'hidden' state and you can tick/untick the option to change them all en mass too...
                            To unhide all current active entities [assuming you have a confused mess!] you can copy/paste this one liner into the Ruby Console + <enter> to make all active entities visible

                            Sketchup.active_model.active_entities.each{|e|e.hidden=false if e.hidden?}
                            

                            If objects inside groups or components have been hidden you need to run this whist in the edit context of that container. Use with care because some 3rd-party components etc might contain hidden edges on purpose so that where they abut [say a mirrored instance of itself] there are no visible edges at the junction...

                            Is there a way to run this through all existing objects and not just the active context?

                            1 Reply Last reply Reply Quote 0
                            • TIGT Offline
                              TIG Moderator
                              last edited by

                              @roni estein said:

                              Is there a way to run this through all existing objects and not just the active context?
                              Yes, but use with care !

                              m=Sketchup.active_model; m.start_operation('un'); m.entities.each{|e|e.hidden=false if e.hidden?}; m.definitions.each{|d|next if d.image?; d.entities.each{|e|e.hidden=false if e.hidden?}}; m.confirm_operation;
                              

                              It's one step undo-able...

                              TIG

                              1 Reply Last reply Reply Quote 0
                              • K Offline
                                kiwi15
                                last edited by

                                This is an old post, but I figure if anyone else stumble upon it with the same issue this tip would be quite useful:

                                I have tried out the new plugin "s4u Hide Line" and it does the trick of showing hidden geometry with a click of a button:

                                https://extensions.sketchup.com/en/content/s4u-hide-line πŸ‘

                                1 Reply Last reply Reply Quote 0
                                • 1 / 1
                                • First post
                                  Last post
                                Buy SketchPlus
                                Buy SUbD
                                Buy WrapR
                                Buy eBook
                                Buy Modelur
                                Buy Vertex Tools
                                Buy SketchCuisine
                                Buy FormFonts

                                Advertisement