Keresés

Új hozzászólás Aktív témák

  • repvez

    addikt

    valaki tudna segiteni? Ezt a kodot kaptam egy node alapu képlet számitásra, de nem mukodik. Blenderben akarom használni, hogy összelinkeljem a számitásokat és az alapján egy modellre lenne hatással. De bemásolva a script ablakba és futtatom a kodot, de nem cinyál semmit nem jelenik meg semmi node nem látom, hogy mi az input output része ahova linkelni lehetne

    import bpy
    import math
    def create_math_node(formula):
    # create a new node tree
    tree = bpy.data.node_groups.new("Math Formula", type='ShaderNodeTree')
    # create input and output nodes
    input_node = tree.nodes.new("NodeGroupInput")
    output_node = tree.nodes.new("NodeGroupOutput")
    # create math node
    math_node = tree.nodes.new("ShaderNodeMath")
    math_node.operation = 'MATH'
    # link input and output nodes to math node
    tree.links.new(input_node.outputs[0], math_node.inputs[0])
    tree.links.new(math_node.outputs[0], output_node.inputs[0])
    # set the formula on the math node
    math_node.inputs[1].default_value = formula
    return tree
    # create node
    my_node = create_math_node("sin(value)")
    # using node
    result = my_node.nodes[0].outputs[0].default_value
    print(result)

    [ Szerkesztve ]

  • repvez

    addikt

    válasz repvez #3921 üzenetére

    valakinek ötlete, hogy hogy kéne ezt müködésre birni? Blenderen belül akarom futtatni pyton környezetben, de nem csinál semmit .Probáltam már sima 3.7es pytonnal és VS CODE-ban is.
    Nem tudom, hogy ezeknél kell e valami speciális dolgot beállitani ezeknél a programoknál,hogy müködjön a kod,mert én csak a default telepitésben bemásoltam és probáltam leforditani, de semmi eredmény nem lett.

    Azt akarnám vele megcsinálni, hogy csináljon egy node-t aminél a képlet elemei a bemenet az eredmény a kimenet és a node-n belül, meg meg lehetne addni neki, hogy milyen matematikai müveleteket hajtson végre rajtuk és természetesen több node-t lehessen kombinálni összekötni , hogy az egyik eredménye a másik bemenete legyen .


    import bpy
    import math

    def create_math_node(formula):
        # create a new node tree
        tree = bpy.data.node_groups.new("Math Formula", type='ShaderNodeTree')

        # create input and output nodes
        input_node = tree.nodes.new("NodeGroupInput")
        output_node = tree.nodes.new("NodeGroupOutput")

        # create math node
        math_node = tree.nodes.new("ShaderNodeMath")
        math_node.operation = 'MATH'

        # link input and output nodes to math node
        tree.links.new(input_node.outputs[0], math_node.inputs[0])
        tree.links.new(math_node.outputs[0], output_node.inputs[0])

        # set the formula on the math node
        math_node.inputs[1].default_value = formula

        return tree

    # create a new material
    mat = bpy.data.materials.new("MathMaterial")

    # create the node tree
    math_tree = create_math_node("sin(value)")

    # assign the node tree to the material
    mat.node_tree = math_tree

    # create an object
    bpy.ops.mesh.primitive_cube_add()

    # assign the material to the object
    bpy.context.object.active_material = mat

    # switch to the material editor
    bpy.context.area.type = 'NODE_EDITOR'

    # select the material
    bpy.context.space_data.node_tree = mat.node_tree

    # evaluate the node
    result = math_tree.nodes[0].outputs[0].default_value
    print(result)

  • repvez

    addikt

    válasz sztanozs #3941 üzenetére

    és azt hogyan ?
    Mert találtam egy easy bpy részt amit bemásoltam a blender addon mappába, de nem irja ki, hogy installálva lenne.

    ha import bpy ott van az elején ha esetleg mégis használja már.
    Mert ezt a hibakodot kaptam

    Python: Traceback (most recent call last):
    File "\Text", line 32, in <module>
    File "\Text", line 20, in create_math_node
    IndexError: bpy_prop_collection[index]: index 0 out of range, size 0

  • repvez

    addikt

    mi lehet a probléma ha egy excel filebol amiben az A,B,és C oszlopában koordináta pontok vannak azokat akarom dxf formátumba átkonvertálni, de valamiért nem sikerül vagy ha igen akkor csak az elso ures celláig. a különbözö alakzatok között egy ures cella van hgagyva igy csak az elso alakzat pontjai mennek át ha egyáltalán átmegy.
    a dxf file mentésre kerül,de nem látni benne pontokat.
    a hiba kod csak ennyi ?
    IndentationError: unexpected indent

    addig mukodott amig a C oszlopba nem került bele adat és nem volt egy cella üresen hagyva.

    import ezdxf
    from openpyxl import load_workbook

    # Load the Excel file
    workbook = load_workbook(filename='G:\g_ref\cross\intersection_points.xlsx')
    worksheet = workbook.active

    # Create a new DXF file
    doc = ezdxf.new(dxfversion='R2010')
    msp = doc.modelspace()

    # Read the coordinates from the Excel file
    max_row = worksheet.max_row
    for i in range(2, max_row+1):
    x = worksheet.cell(row=i, column=1).value
    y = worksheet.cell(row=i, column=2).value
    z = worksheet.cell(row=i, column=3).value

    # Check if any of the cells are empty
    if x is not None and y is not None and z is not None:
    msp.add_point((x, y, z))

    # Save the DXF file
    doc.saveas('G:\g_ref\cross\coordinates.dxf')

  • repvez

    addikt

    válasz kovisoft #3994 üzenetére

    az IF sorra és az alatta lévöre jön hiba de nem tudom, hogy tudnám megnézni, hogy hol van a szoköz vagy tab hiba, látszolag egyhelyen vannak.
    > import ezdxf
    >>> from openpyxl import load_workbook
    >>>
    >>> # Load the Excel file
    >>> workbook = load_workbook(filename='G:\g_ref\cross\intersection_points.xlsx')
    >>> worksheet = workbook.active
    >>>
    >>> # Create a new DXF file
    >>> doc = ezdxf.new(dxfversion='R2010')
    >>> msp = doc.modelspace()
    >>>
    >>> # Read the coordinates from the Excel file
    >>> max_row = worksheet.max_row
    >>> for i in range(2, max_row+1):
    ... x = worksheet.cell(row=i, column=1).value
    ... y = worksheet.cell(row=i, column=2).value
    ... z = worksheet.cell(row=i, column=3).value
    ...
    >>> # Check if any of the cells are empty
    >>> if x is not None and y is not None and z is not None:
    File "<stdin>", line 1
    if x is not None and y is not None and z is not None:
    IndentationError: unexpected indent
    >>> msp.add_point((x, y, z))
    File "<stdin>", line 1
    msp.add_point((x, y, z))
    IndentationError: unexpected indent
    >>>
    >>> # Save the DXF file
    >>> doc.saveas('G:\g_ref\cross\coordinates.dxf')
    >>>

  • repvez

    addikt

    válasz kovisoft #3996 üzenetére

    probáltam több félét ide oda másolgattam mig egyszercsak müöködött. meg a gond az volt, hogy a dxf file-t nem egyformán mutatja vagy olvassa be a külöbözö programok, az infranview és a PS hibát dobot rá, pedig elvileg kezelik, a blenderbe se mindig mutatta ,

    Egyébként ha ennyire fontos a szóköz és a tab akkor miért nem jelzik valahogy a szerkesztöben ugy mint egy sima word dokumentumnál, hogy mikor milyen karakter volt leütve, segég elemként ami láthatatlan a formázásnál?

  • repvez

    addikt

    válasz kovisoft #4000 üzenetére

    hát blenderben kiszinezi a parancsokat ,de leforditani a python consolban csináltam ott csak mint egy DOS parancsoros kijezöt látok nincs semmi menö rendsze, de ott legalább ha hiányol valamit akkor lefuttatok egy PIP instalt és már fut a kod, mig máshol nem mindegy, hogy hova telepitem a szukséges modulokat libeket stb,meg még be is kell emelni a keretrendszerbe .
    VS22ben is néztem de az sokkal bonyolultabb és a fenti problémák miatt le sem fordul az a kod mig a consolban igen

  • repvez

    addikt

    üdv érdeklődnék, hogy nem lenne e probléma ha egy teljes 100 sor körüli codeot linkelnék be és segítené valaki kibogozni, hogy mi hogy lenne működőképes?
    De lehetőleg csak ha tényleg a segítés a cél és nem annak firtatása ,hogy miért ezt és miért úgy ,ha nem is értek hozzá (csak a korábbi topicocbol kiindulva)

  • repvez

    addikt

    [link]
    akkor igy linkelem.
    Ahogy most muködik.
    Alul megadom a nevét és az értékét a nodenak majd létrehozza
    A piros négyzet jelentené a portot a kapcsolodáshoz, ebbol kellene egy ki és egy bemeneti a node oldalára.jelenleg csak akkor mozgathatoak a node-k ha már össze vannak kötve egymással és csak egy összeköttetés lehet most

    Amit szeretnék, hogy egy olyan progi legyen mint ahogy a legtöbb mostanában használt programnél NODE-t használni.
    Olyasmi mint Blenderben.
    amit szeretnék elérni, hogy
    -jobb gombbal késziteni egy uj node-t (egy másik változatban ez már ugy van)
    -MEgadni neki a nevét ami fix lenne külön fejléccel és szinnel.
    -bármikor lehessen értéket addni neki ha a nodeba kattintok
    -legyen be és kimeneti portja
    -ezeken a portokon keresztül lehessen összekötni a node-t akár több bemenet és kimenet is lehessen egy node-hoz.
    -szabadon lehessen az egérrel mozgatni öket és nagyitani bármekkora térbe
    -lehessen elmenteni és folytatni késöbb
    Ami a lényeg
    Ezeket a nodokat meg lehessen határozni, hogy bámilyen matematikai muveleteket végezzen el a két node érték között

    pl: egyik node 10 a másik 20 és össze akarom addni öket akkor össze kell kötni a 10 es kimenetét a 20 bemenetével és megadni, hogy összeadás legyen és igy a kimeneten keresztül már 30 menne a következő node-hoz

    esetleg ha már van ilyen ami személyreszabhato node bázisu visuális program az is jo

Új hozzászólás Aktív témák