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

    Place Text Label script (looking for one)

    Scheduled Pinned Locked Moved Developers' Forum
    18 Posts 7 Posters 4.6k 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.
    • I Offline
      IADDIC
      last edited by

      Has anyone perfected this script or made one similar? I model construction projects that require many labels and being able to display component information would avoid a lot of reentry of day a just for display purposes. Also, does anyone know how to get sketchup (and Layout) to display the parent component and not the children components. Seems sketchup and layout both display the child component which is not what I AM after.

      thanks....rich

      1 Reply Last reply Reply Quote 0
      • Dan RathbunD Offline
        Dan Rathbun
        last edited by

        @iaddic said:

        Also, does anyone know how to get sketchup (and Layout) to display the parent component and not the children components. Seems sketchup and layout both display the child component which is not what I AM after.

        Not exactly sure what your asking...

        ... BUT, SketchUp has two ways of controlling visibility.

        (1) Entity object visibility state

        All Sketchup::Drawingelement subclass objects have an individual visibility state property. This is set via the visible= or hidden= instance setter methods. The current state is gotten via the visible? or hidden? instance query methods

        (2) Layer visibility state

        Layers in SketchUp are only really for display control. If child components are on a different layer than the parent component, the "child layer" can be hidden either manually via the Layer Manager dialog, or via the layer's visible= setter method.

        OK?

        So either way, it would mean that ALL child component instances would be hidden in ALL parent component instances because the layer assignments, or object visibility states, are done in the component definition.

        The only way around this, would be to use unique parent groups.

        I'm not here much anymore.

        1 Reply Last reply Reply Quote 0
        • I Offline
          IADDIC
          last edited by

          Hi Dan,

          The topic was directed at labels...I am not trying to control the visibility of the graphical item but more specifically need to include text with the object. Trouble is Sketchup and Layout seem weak on displaying attributes we spend so much time incorporating into our models.

          For example I have a main component made up of three sub components. I use this main component often and there may be 100 or so instances a model. Since the component sits in a unique position in the model I must tag it with a unique name so that it is identifiable and locate able in downstream work flows.

          So the model contains all kinds of specific attribute information about this component including its location and name...

          However, when I try to apply labels; which Layout touts as having the ability to label the components name, it displays the sub components name and not the main component name...

          This means I get to manually enter labels to match each model instance in Layout...what a wast of time! the data is there we just can not display what we want. There are many threads on this subject and I am wondering why this is so difficult to achieve...or why it seems to be obviously missing in the first place...

          Now unless I am missing something, which I may very well might be, I am trying to unleash the attributes used in creating a model to be usable in Layout...or alternately, apply the attribute labels in a model view and display that view in Layout...

          Thanks...

          1 Reply Last reply Reply Quote 0
          • Dan RathbunD Offline
            Dan Rathbun
            last edited by

            @iaddic said:

            The topic was directed at labels... There are many threads on this subject and I am wondering why this is so difficult to achieve...

            Because the Sketchup::Text class is very rudimentary, and lacks API interfaces to things, such as:
            (1) the objects that text callouts are attached to
            (2) the text callouts that are attached to objects
            (3) the font settings
            (4) formula fields that can display attributes
            (5) an update method on the text instance

            We've complained for years about this, and already requested these features.

            BUT, it seems those "in charge" feel this is documentation, and want to push users over to doing this within Layout. (Ignoring the fact there are people who do not want to use Layout, and therefor need a more robust text callout feature in the SketchUp model space.)

            I'm not here much anymore.

            1 Reply Last reply Reply Quote 0
            • I Offline
              IADDIC
              last edited by

              Thanks Dan...hopefully this will improve because much of the model is data driven...what a shame. Thanks for informing me

              1 Reply Last reply Reply Quote 0
              • Dan RathbunD Offline
                Dan Rathbun
                last edited by

                @iaddic said:

                Trouble is Sketchup and Layout seem weak on displaying attributes we spend so much time incorporating into our models. ...
                However, when I try to apply labels; which Layout touts as having the ability to label the components name, it displays the sub components name and not the main component name...

                This means I get to manually enter labels to match each model instance in Layout...what a wast of time!

                Sounds like a bug in Layout.

                If it does not work the way you think it should, try posting a bug report:
                http://forums.sketchup.com/category/layout

                I'm not here much anymore.

                1 Reply Last reply Reply Quote 0
                • I Offline
                  IADDIC
                  last edited by

                  Thanks Dan, I've submitted a bug report, we'll see what they say...I am still bemused by how locked out the meta data information is in both sketchup and layout...I sure hope they open it all up sometime soon.

                  Have a great weekend, Rich

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

                    There's a weird difference between v2014 and earlier versions... in SketchUp - and I suspect filtered down into Layout 😕

                    In earlier SketchUp versions, if you add a Text label onto a 'container' it displays the name of that container's Instance, or if that is blank it shows the name of the container's Definition: if the main container includes other nested containers, then you need to place Text labels for those within the main container itself - whatever you click onto in the main container the Text label always relates directly to it, NOT its contents.

                    In SketchUp v2014, if you add a Text label onto a 'container' it displays the name of that container's Instance, or if that is blank it shows the name of the container's Definition: BUT if the main container includes other nested containers, then when you add the Text label onto the outside of the main container it will display the 'name' of that nested element instead - and if the main container only contains nested containers you'll always get the 'names' of those - never the container itself, so in that case you cannot label using the name of the main container ! - however, if the main container also includes some raw geometry then clicking onto that will add the name of the main container again.


                    So to recap:
                    In earlier SketchUp versions any Text label added onto a 'container' only ever displays that container's 'name'.
                    But in SketchUp v2014, whilst a similar Text label will still display the container's 'name', this occurs only if the clicked entity is 'geometry' - if the clicked entity is another nested container then the Text label shows the name of that nested container instead: thus if the main container includes only nested containers it is now no longer possible to add a Text label showing its name, because the nested names always take precedence !

                    TIG

                    1 Reply Last reply Reply Quote 0
                    • I Offline
                      IADDIC
                      last edited by

                      TIG - Amazing that you knew this...I just received feedback from Sketchup after submitting a Bug report as Dan suggested...they felt it was a bug in version 2014...so I tried what you said and added some geometry to my component and just as you said: the label contains the name of the component as expected.

                      So first thanks for chiming in...I've been all over for weeks looking for a solution/alternative to get my labels to display the the main component.

                      Secondly, the convention you describe carries over into Layout so it would seem it is that way by design.

                      Thanks Again, Rich

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

                        I don't think it's intentional !

                        You really ought to be able to label a component OR its nested instances - even if it's wholly made from nested instances.
                        A simple solution would be to add a modifier key to the Text tool, so if you pick a point for some Text whilst holding down Shift it then always displays the top-level container, otherwise it says the nested part's name OR the main container name IF the clicked-on object is raw-geometry or an unnamed-group.

                        TIG

                        1 Reply Last reply Reply Quote 0
                        • Dan RathbunD Offline
                          Dan Rathbun
                          last edited by

                          If you do not need primitives in the main container, then a construction point could give you something to "point to". Later the layer of the construction point could be hidden.

                          I'm not here much anymore.

                          1 Reply Last reply Reply Quote 0
                          • E Offline
                            EtsGrenier
                            last edited by

                            Hi everyone,

                            Like the users ask to Al Hart, I me too want to place a text label in the drawing, using the value of an Attribute on the entity for the text. To be more specific I downlaod a dynamic door compoenent wich is really cool and offer me lot of options, but I really want to have the name of the compomenet and the its length and height to be shown at the bottom of the door for example or eles where in order to view this information when I produce de plan view in layout. I know I can a samrt lable in Layout to do that wich I am doing right now. But I really want to have this implemented in the compoenent so the infomrations is update upon the dynamic compoenent attribute. Because right now, we often miss a door when inserting samrt lable in LAYOUT. It's a hard job to get focus and not mis a door in LAYOUT when we have like 100 doors in our drawing.

                            Thanks in advance for your answer.

                            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