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

    [REQ] Plugin Multi-View Elevations

    Scheduled Pinned Locked Moved Plugins
    50 Posts 10 Posters 4.2k Views 10 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.
    • KrisidiousK Offline
      Krisidious
      last edited by

      @box said:

      One thing to keep in mind while making this. If the scene order is right it should make a good basis for a standard animation.

      I just had fish for dinner, so mine is baited breath.

      πŸ‘

      By: Kristoff Rand
      Home DesignerUnique House Plans

      1 Reply Last reply Reply Quote 0
      • renderizaR Offline
        renderiza
        last edited by

        Hi,

        Any ideas on what will be the name of this plugin?

        Cheers!

        [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

        1 Reply Last reply Reply Quote 0
        • KrisidiousK Offline
          Krisidious
          last edited by

          The name of the symbol is an Elevation Marker. Perhaps "MarkerMaker"?

          By: Kristoff Rand
          Home DesignerUnique House Plans

          1 Reply Last reply Reply Quote 0
          • renderizaR Offline
            renderiza
            last edited by

            The name is important since it will give a hint as to what the plugin do.

            "Marker Maker" - Is good

            "Elevation Maker" - Maybe good as well?

            Anyways no hurry for this but its nice to start exploring ideas. πŸ‘

            [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

            1 Reply Last reply Reply Quote 0
            • KrisidiousK Offline
              Krisidious
              last edited by

              Elevation Maker would be good if you can also make the exterior elevations... which would be an inversion of directions. The same marker is used for exterior parallel elevations.

              Easy Elevations?
              Interioriza?
              Elevation Tools?

              By: Kristoff Rand
              Home DesignerUnique House Plans

              1 Reply Last reply Reply Quote 0
              • CadFatherC Offline
                CadFather
                last edited by

                sectionist πŸ˜†

                1 Reply Last reply Reply Quote 0
                • BoxB Offline
                  Box
                  last edited by

                  Multi Elevation Set Point

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

                    Late to the party...

                    ElevTag - 1 direction == outside elev marker...
                    ElevTag4 - 4 direction == room elev marker...

                    That's what mine is called...
                    Unpublished for personal use...

                    TIG

                    1 Reply Last reply Reply Quote 0
                    • CadFatherC Offline
                      CadFather
                      last edited by

                      camera samurai

                      1 Reply Last reply Reply Quote 0
                      • KrisidiousK Offline
                        Krisidious
                        last edited by

                        You already have something that does this Tig?

                        By: Kristoff Rand
                        Home DesignerUnique House Plans

                        1 Reply Last reply Reply Quote 0
                        • renderizaR Offline
                          renderiza
                          last edited by

                          Maybe TIG already have this but just in case here is some initial progress into making this plugin happen.

                          The following code is only purpose is to position camera to the center of a group (in this case the marker with arrows). The way the code filters other groups is by name so in this case I am naming the group "Camera".

                          model = Sketchup.active_model ;
                          sel = model.selection ;
                          ents = model.active_entities ;	
                          groups = ents.grep(Sketchup;;Group)
                          
                          groups.each do |e|
                            if e.name == "Camera"
                              boundbox = e.bounds ;
                              @center = boundbox.center ;
                            end ;
                          end ;
                          
                          view = Sketchup.active_model.active_view ;
                          
                          x = @center.x.to_f ;
                          y = @center.y.to_f ;
                          z = 50 ;
                          newEye = Geom;;Point3d.new(x,y,z) ;
                          
                          targetX = 0.0 if !targetX ; 
                          targetY = 0.0 if !targetY ; 
                          targetZ = 50.0 if !targetZ ; 
                          newTarget = Geom;;Point3d.new(targetX,targetY,targetZ)
                          
                          newUp = Geom;;Vector3d.new(0,0,1)
                          
                          newCamera = view.camera
                          newCamera.set(newEye,newTarget,newUp)
                          
                          view.camera = newCamera
                          view.invalidate()
                          

                          There is still a lot of things to but just want to post some progress code. This is just testing code that you may use with "Ruby Code Editor" to see results.

                          Cheers!

                          [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

                          1 Reply Last reply Reply Quote 0
                          • CadFatherC Offline
                            CadFather
                            last edited by

                            woudn't it be more useful to actually click on the position required? (cheddar walls)

                            1 Reply Last reply Reply Quote 0
                            • KrisidiousK Offline
                              Krisidious
                              last edited by

                              @cadfather said:

                              woudn't it be more useful to actually click on the position required? (cheddar walls)

                              yes that will be necessary. like 5 or more of these will be needed per plan... and rooms will never be in the same location.

                              By: Kristoff Rand
                              Home DesignerUnique House Plans

                              1 Reply Last reply Reply Quote 0
                              • renderizaR Offline
                                renderiza
                                last edited by

                                What you suggested can be done no problem but having the ability to place a marker will provide visual reference which is good. Maybe you can click where you want to position camera and also place markers at the same time.

                                Cheers!

                                [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

                                1 Reply Last reply Reply Quote 0
                                • OxerO Offline
                                  Oxer
                                  last edited by

                                  Are you probe CubicPanoOut? You can free downloading it here CubicPanoOut.rb
                                  The plugin create six Views/Scenes-->Front, Right, Left, Back, Up and Down and you have the possibility to save the six images with size option.
                                  With the Place Camera SU Tool, put the camera for example in the center of a room and automatically the CubicPanoOut generate the six Views/Scenes.
                                  The problem is that the images generates are square, same width & height but you can go to File/Export/2D Graphic and save the image in the size that you want.

                                  "The result is the end what is important is the process" by Oxer
                                  [http://www.oxervision.blogspot.com/(http://www.oxervision.blogspot.com/)]

                                  1 Reply Last reply Reply Quote 0
                                  • KrisidiousK Offline
                                    Krisidious
                                    last edited by

                                    I'll have a look at it.

                                    By: Kristoff Rand
                                    Home DesignerUnique House Plans

                                    1 Reply Last reply Reply Quote 0
                                    • S Offline
                                      sepo
                                      last edited by

                                      We are talking about sections here rather than elevations, right? Elevations would just show internal orthogonal views and sections would cut through the walls.
                                      Surely that would be awesome tool to have.

                                      1 Reply Last reply Reply Quote 0
                                      • KrisidiousK Offline
                                        Krisidious
                                        last edited by

                                        In drafting we just call them elevations, but yes it is a section and in SU a section would be used to accomplish it. having the walls on either side cut out would be good. However, I have seen architects and designers show varying methods of showing them. some don't show any walls past the interior surface, some show the section of the wall, floor and roof/ceiling...

                                        By: Kristoff Rand
                                        Home DesignerUnique House Plans

                                        1 Reply Last reply Reply Quote 0
                                        • S Offline
                                          sepo
                                          last edited by

                                          If you are showing design only than cut walls could be omitted, but if you are preparing working drawings than one would show cut walls. In any case I always show cut walls as they convey idea of proximity of windows /doors to the floor/ceiling.
                                          So idea of this plugin is really advanced section tool. That would save a lot of time if possible to implement, so +1 from me.

                                          1 Reply Last reply Reply Quote 0
                                          • renderizaR Offline
                                            renderiza
                                            last edited by

                                            Hi,

                                            Here is an update of what I have done so far;

                                            
                                            #########Guide
                                            # camdist = 80*12
                                            # Elavation A (Front) = x , y+camdist
                                            # Elavation B (Right) = x+camdist , y
                                            # Elavation D (Left)  = x-camdist , y
                                            # Elavation C (Back)  = x , y-camdist
                                            ########
                                            
                                            model = Sketchup.active_model ;
                                            view = model.active_view ;
                                            camera = view.camera ;
                                            pages = model.pages ;
                                            page = pages.selected_page
                                            sel = model.selection ;
                                            ents = model.active_entities ;   
                                            groups = ents.grep(Sketchup;;Group)
                                            
                                            groups.each do |e|
                                              if e.name == "Camera"
                                                boundbox = e.bounds ;
                                                @center = boundbox.center ;
                                              end ;
                                            end ;
                                            
                                            x = @center.x.to_f ;
                                            y = @center.y.to_f ;
                                            z = 6*12 ;
                                            newEye = Geom;;Point3d.new(x,y,z) ;
                                            newUp = Geom;;Vector3d.new(0,0,1)
                                            camdist = 80*12
                                            
                                            if page == nil
                                            pages.add "Elevation A" 
                                            pages.add "Elevation B" 
                                            pages.add "Elevation C" 
                                            pages.add "Elevation D" 
                                            end
                                            
                                            elev1 = "Elevation A" ;
                                            elev2 = "Elevation B" ;
                                            elev3 = "Elevation D" ;
                                            elev4 = "Elevation C" ;
                                            page_num = 0 ;
                                            
                                            pages.each {|page|
                                            	if page.name == elev1
                                            		pages.selected_page = model.pages[page_num] ;
                                            		break
                                            	end ;
                                            	page_num+=1 ;
                                            } #Pages.each
                                            if page.name != "Elevation A"
                                            pages.add "Elevation A" 
                                            end
                                            
                                            targetX = x ;
                                            targetY = y+camdist ;
                                            targetZ = z ;
                                            newTarget = Geom;;Point3d.new(targetX,targetY,targetZ)
                                            
                                            elevACam = view.camera
                                            elevACam.set(newEye,newTarget,newUp)
                                            
                                            view.camera = elevACam
                                            view.invalidate()
                                            
                                            camera.perspective = true ;
                                            camera.perspective = false ;
                                            page = pages.selected_page.update(1) ;
                                            
                                            #####################################################################
                                            x = @center.x.to_f ;
                                            y = @center.y.to_f ;
                                            page_num = 0 ;
                                            pages.each {|page|
                                            	if page.name == elev2
                                            		pages.selected_page = model.pages[page_num] ;
                                            		break
                                            	end ;
                                            	page_num+=1 ;
                                            } #Pages.each
                                            if page.name != "Elevation B" 
                                            pages.add "Elevation B" 
                                            end
                                            
                                            targetX = x+camdist ;
                                            targetY = y ;
                                            targetZ = z ;
                                            newTarget = Geom;;Point3d.new(targetX,targetY,targetZ)
                                            
                                            elevBCam = view.camera
                                            elevBCam.set(newEye,newTarget,newUp)
                                            
                                            view.camera = elevBCam
                                            view.invalidate()
                                            
                                            camera.perspective = false ;
                                            page = pages.selected_page.update(1) ;
                                            
                                            #####################################################################
                                            x = @center.x.to_f ;
                                            y = @center.y.to_f ;
                                            page_num = 0 ;
                                            pages.each {|page|
                                            	if page.name == elev3
                                            		pages.selected_page = model.pages[page_num] ;
                                            		break
                                            	end ;
                                            	page_num+=1 ;
                                            } #Pages.each
                                            if page.name != "Elevation D" 
                                            pages.add "Elevation D" 
                                            end
                                            
                                            targetX = x-camdist ;
                                            targetY = y ;
                                            targetZ = z ;
                                            newTarget = Geom;;Point3d.new(targetX,targetY,targetZ)
                                            
                                            elevBCam = view.camera
                                            elevBCam.set(newEye,newTarget,newUp)
                                            
                                            view.camera = elevBCam
                                            view.invalidate()
                                            
                                            camera.perspective = false ;
                                            page = pages.selected_page.update(1) ;
                                            
                                            #####################################################################
                                            x = @center.x.to_f ;
                                            y = @center.y.to_f ;
                                            page_num = 0 ;
                                            pages.each {|page|
                                            	if page.name == elev4
                                            		pages.selected_page = model.pages[page_num] ;
                                            		break
                                            	end ;
                                            	page_num+=1 ;
                                            } #Pages.each
                                            if page.name != "Elevation C" 
                                            pages.add "Elevation C" 
                                            end
                                            
                                            targetX = x ;
                                            targetY = y-camdist ;
                                            targetZ = z ;
                                            newTarget = Geom;;Point3d.new(targetX,targetY,targetZ)
                                            
                                            elevBCam = view.camera
                                            elevBCam.set(newEye,newTarget,newUp)
                                            
                                            view.camera = elevBCam
                                            view.invalidate()
                                            
                                            camera.perspective = false ;
                                            page = pages.selected_page.update(1) ;
                                            
                                            #####################################################################
                                            page_num = 0 ;
                                            pages.each {|page|
                                            	if page.name == elev1
                                            		pages.selected_page = model.pages[page_num] ;
                                            		break
                                            	end ;
                                            	page_num+=1 ;
                                            } #Pages.each
                                            
                                            

                                            Important to realize that the above code is just a sketch which still needs to be polish but it offers an idea of the progress. Also I post it so that if anyone spots something that I can improve then please by all means let me know.

                                            If you want to test this its important to do the following;

                                            1. Crete group to serve as a marker
                                            2. Right click that group and pick "Entity info"
                                            3. Under Name enter "Camera"
                                            4. Open "Ruby Code Editor" plugin
                                            5. Copy & Paste the above code I provided to "Ruby Code Editor"
                                            6. Execute Code
                                            7. Done!

                                            Anyways hope to keep working on this so I can finish and make Beta rb file...Cheers!

                                            [url=https://www.sketchupcode.com/:z3kqsidd]My Extensions ...[/url:z3kqsidd]

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

                                            Advertisement