Jump to content

KingChaos

Member
  • Posts

    306
  • Joined

  • Last visited

Posts posted by KingChaos

  1. Thanks a lot, yeah it works, but i see, that my marionette is not composing the lines i made if it is an object node.

     

    i used the node without  duplicate and its working.

     

    the networks works fine, the wrapper too, but in object node (thats what i need) its not composing the lines.

     

    The problem is, if i change some of the segments length of my marionette, it wont modify the existing polygon, it creates a new one.

    so i need to find the named polygon with the node, then rename it to a temp-name, and delete it?

     

    If i object the node i can rotate the objectnode and i can change all lengths but the result is not a composed polygon as i need it.

     

    image.thumb.png.80326891c99110470249d11adb9a6da3.png

     

    maybe someone can explaine, whats so different in object nodes and wrappers, or how i have to make it to make it work well.

     

     

    BR KC

    9 segmentiges POlygon fuer Strangmoebel V8.vwx

  2. hey,

     

    i tried to modify the "name node", in the following way with chatgpt:

     

    remove the oip.control widget

    add in string input "sName"

     

    which will be the name of the object to get.

     

    this is not working, because i cant do this by my own.

     

     

    #Revised by MFarrell on 02/05/16
    #Edited by KingChaos with ChatGPT 10/14/24
    #Modified April 2017
    @Marionette.NodeDefinition
    class Params(metaclass=Marionette.OrderedClass):
        # APPEARANCE
        
        this = Marionette.Node('Name')
        this.SetDescription('Get a named object in the drawing')

        # Input Port
        sName = Marionette.PortIn('Input Value')
        sName.SetDescription('name of the object to get')

        # Output Ports
        obj = Marionette.PortOut('h')
        obj.SetDescription('The object with the specified name')


        # BEHAVIOR
        this.SetLinksObjects()

        def RunNode(self):
            # inputs
            obj = vs.GetObject(self.Params.sName.value)
            sName = self.Params.sName.value  # Get the input value

        
            # outputs
            self.Params.obj.value = obj
            self.Params.outputValue.value = sName  # Pass the input value to the output

     

    can someone help me make this node working?

     

    Or has someone a different node, which gets an named object if it exists?

    poly delete name.vwx

  3. i am totally spoiled of TopSolids automatic constraining EVERYTHING u draw/sketch.

     

    But now i got some issues here, to make it on a polygon.

     

    I have this polygon.

     

    and i need to fix its starting point in X-Y

     

    image.thumb.png.156acdc3564ed3fe1c19c8c1c4f1e1e0.png

    and then

    have constraints (length constraints) for each segment.

     

    i will need some measures on a specific class, which i have to activate/visible whhen i need to change the polygon.

     

    this polygon is a control geometry of a complex marionette.

     

    Constraining this 2D Polygon makes me a white wizzard in placing 3D Cabinets and modify they sizes/orientation with this constraints.

     

    The manual modification of this polygon () is horror in VWX, because u cant see what is an endpoint of a segment (they got the f*** same color)

     

    image.png.fc4f7ee191ebaff17ef08901c69d32fa.png

    u cant see what is middle point or end point.

     

    so if i can place some constraints of the segments, this problem is obsolet.

     

    I want to change the dimensions of the constraints by clicking the measure and entering a new length of a segment, but the polygons start has to be fix, only the endpoint and all following segment must follow the change of a pre sketched segment.

     

    Check this vid to see what i need 🙂 

     

     is there any way to get to something like that?

     

    BR KC

  4. is there any AI help for making those codes of all the node of f.e. a wrapper to one code without spagethicode?

     

    i think u know what i mean. i have dozents of marionettes which i have to fasten up, but i cant code by my self 🙂

  5. this told me CHATgpt

     

    @Marionette.NodeDefinition
    class Params(metaclass=Marionette.OrderedClass):
        # APPEARANCE
        # Name
        this = Marionette.Node('Delete')
        this.SetDescription(
            'Deletes an object if the condition is met.\nNote: Objects to be deleted are saved in a list and are deleted at the end of the network execution. So, there is no risk of referencing an object that no longer exists'
        )

        # Input Ports
        obj = Marionette.PortIn(vs.Handle(0), 'hObj')
        obj.SetDescription('The object to delete')

        delete_flag = Marionette.PortIn(False, 'DeleteFlag')
        delete_flag.SetDescription('Boolean flag to decide whether to delete the object or not')

        # OIP Controls

        # Output Ports

        # BEHAVIOR
        def RunNode(self):
            # inputs
            obj = self.Params.obj.value
            delete_flag = self.Params.delete_flag.value

            # script
            if delete_flag:
                vs.Marionette_DisposeObj(obj)

            # outputs
     

  6. Hi,

     

     

    i made some kind of rastered dowels for my cabinets, because the cabinetcreator of IC does not allow applying dowels in backplates.

     

    So i made this small marionette to have a red symbol which can be placed as a "box object" in the cabinets which is adoptable to the cabinet measures.

     

    network run - works

    wrapping - works

    object node - works

    symbol of "object node" - VWX CRASH

     

    does someone knows, whats wrong with my network?

     

     

    BR KC

    Duebelmarionette als Boxobjekt forum.vwx

  7. i want to make an object node, which places red symbols like this

     

    image.png.e05beee8f51658d1b03f918d0309465b.png

    behind each segment of a named polygon.

     

    i need to put the segments length into the red symbols.

     

    with xg cabinets its working very good, except some unwanted behavior.

     

    Therefore i read out the "record" of the red symbols and found

     

     

    image.thumb.png.cf2c612b1c19b0e527642a05465d5dd5.png

     

    but it seems, that there are no fields with the data i need.

     

     

    So i need to remake the red symbol to make it be dynamic with a database?

     

    The red symbol is not that easy. You saw it before.

     

     

    But i dont know how to make the symbol react like now AND having a record with all the oip inputs.

  8. i needed the name of the field, because it seems not to be the name i called the input node which is in the oip.

     

    is there any different way, to manipulate the OIP parameters of marionettes placed red symbols?

     

    i thought they were record based, maybe this is not the right way to do it.

     

     

    symbole am strang V2.vwx

  9. ah ok, i made it with chatGPT.

     

    @Marionette.NodeDefinition
    class Params(metaclass = Marionette.OrderedClass):
    #APPEARANCE
        #Name
        this = Marionette.Node( "Get Record Name" )
        this.SetDescription( 'Returns the value of a data record field. If the data record does not exist or is not attached, it returns false' )

        #Input Ports
        inObj = Marionette.PortIn( vs.Handle(0), 'hObj' )
        inObj.SetDescription( "The input object" )
        

        #OIP Controls

        #Output Ports
        obj = Marionette.PortOut('hObj')
        obj.SetDescription( "The original object" )
        recName = Marionette.PortOut('sRecName')
        recName.SetDescription("The name of the attached record")

    #BEHAVIOR

    def RunNode(self):
            # functions
            def getRecName(objHan):
                # This function returns the name of the first record attached to ObjHan, else an empty string
                totalRecCount = vs.NumRecords(objHan)
                if totalRecCount > 0:
                    locRecHan = vs.GetRecord(objHan, 1)
                    locRecName = vs.GetName(locRecHan)
                    return locRecName
                return ''

          # inputs
            inObj = self.Params.inObj.value

            # script
            recName = getRecName(inObj)

            # outputs
            self.Params.recName.value = recName
            self.Params.obj.value = inObj

     

    it returns 1 record name.

     

    i failed to add an output with a list of the field names of this record.

     

    Then i tried to list all attached records, but that does not work too.

     

    😞

  10. hi,

     

     

    how i can call the record name of a red symbol, placed with a marionett network.

     

    i need to place red symbols and put some parameters into them.

     

    Which nodes i have to use for this?

     

    BR KC

×
×
  • Create New...