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.
    • 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
                                      • TIGT Offline
                                        TIG Moderator
                                        last edited by

                                        I have PM'd a 2013 compliant version of my tool 'TIG-ElevTag' to some of you for beta-testing...
                                        All comments welcome [by PM] before it gets published...

                                        TIG

                                        1 Reply Last reply Reply Quote 0
                                        • Rich O BrienR Offline
                                          Rich O Brien Moderator
                                          last edited by

                                          Are you gonna publish it how i think you're gonna publish it?

                                          Download the free D'oh Book for SketchUp πŸ“–

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

                                            NO.
                                            I await beta-test results...
                                            I'll send you a copy - to test πŸ˜•

                                            TIG

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

                                            Advertisement