Page 1 of 106 1231151101 ... LastLast
Results 1 to 20 of 2102

Thread: [Addon][WIP] Sverchok, parametric nodes for architects.

  1. #1
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961

    [Addon][WIP] Sverchok, parametric nodes for architects.

    ------------------------------ Sverchok -----------------------------

    СВеРЧОК - Система ВЕкторного Рабочего Черчения и Объектного Конструирования.
    Sverchok - cricket in russian + upper line in russian.

    Site: http://nikitron.cc.ua/sverchok_en.html

    Sverchok is node programing of geometry, but in completely virtual way (with ability to bake geometry to blender). You would work with pure data, as floats, matrixes, lists, formulas, etc. but in height interface level.



    ------------------------------ Sections ----------------------------


    [Addon] Sverchok
    Node-based tool for parametric design, consists of such node groups:

    1. Generators (+ extended generators with scripted nodes)**
    2. Transform (main transformations)
    3. Analyzers (get all kind of analyze data from objects)
    4. Modifiers (make and change modifiers)
    --------------------------------------------------------------
    5. Number (basic number operations, ranges, math, exec...)
    6. Vector (working with vertices)
    7. Matrix (dealing with matrices)
    8. Logic (logic + AI neuron)
    9. List (Main+Structure sublists, the real power of sverchok)
    --------------------------------------------------------------
    10. Viz (all kind of OpenGL viz + bmesh and polylines creators)
    11. Text (not exactly text, but data displaying, storing, reading adapting for Human)
    12. Scene (get objects and modify objects in current scene)
    13. Layout (routine)
    14. BPYdata (datablocks from blender to deal with)
    --------------------------------------------------------------
    15. Network (deal with network)
    16. Beta (nodes ready, but have not docs)
    17. Alpha (nodes are row)
    18. Groups (grouping nodes, making monade nodes)

    ** scripted node from generator has many templates.

    ------------------------------- Video -------------------------------


    Subscribe on channel or playlist.


    ---------------------------- Download ----------------------------

    Docs:
    http://nikitron.cc.ua/sverch/html/main.html
    AutoDocs:
    https://readthedocs.org/projects/sverchok/builds/
    Git (Sverchok itself):
    https://github.com/nortikin/sverchok/


    ---------------------------- Install --------------------------------

    as blender addon from zip file. Get this zip file, please:




    ---------------------------- Update -------------------------------

    With an Check for updates button, that turns to Upgrade addon button.


    ----------------------------- About us ----------------------------


    Our team consists of:

    @ Nikita Gorodetskiy aka nikitron
    @ Alexander Nedovizin aka Cfyzzz
    @ Linus Yng aka Linusy
    @ Augustin Jimenezz aka Azrael^^
    @ Dealga McArdle aka zeffii
    @ Konstantin Vorobiew aka Kosvor
    @ Ilya Portnov aka portnov
    @ Eleanor Howick aka elfnor
    @ Walter Perdan aka kalwalt
    @ Marius Giurgi aka DolphinDream
    Also many thanks to all guys adding code, and helping us and donating for team and artists/architects using Sverchok.
    Thank to Paul Kotelevets that beleaved in opensource.
    Thank to Blendersushi blogger, Jimmy Gunnawan who made so many videos and articles so I lost in count. Many stuff made with him.



    Some time ago discovered new tool - grasshopper and from end of 2012, i started this project, in August 2013 Alexander joined and work started to go fast, than we made completely new version with viewers and data transfering between sockets in November, 1, it was 0.2.0 version. Later sverchok growing much and team becomes larger.
    My idea is to make addon, fully representing Rhinocerros-Grasshopper functionality. I started from mesh modelling. Try to mimic parametrism (parametric style of Zaha Hadid) in python tools. In future aim - to use blender NURBS to generate, to all tha stuff.


    ---------------------------- Images -----------------------------








    Attached Images Attached Images
    Last edited by nikitron; 24-May-17 at 09:04. Reason: development
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  2. #2
    architecture and scripting is a new relationship. please, go on with your project. I know this another project of a parametric software using scripting. the developer is an architect, as well. http://code.google.com/p/openshapefactory/

    regards



  3. #3
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    Much thank you.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  4. #4
    Member
    Join Date
    Jan 2012
    Location
    RO
    Posts
    772
    Very ambitious ! Grasshopper is a very complex plugin for Rhinoceros. It's been developed over a long period of time by very skilled hands.

    I fear that until proper NURBS make their way into Blender it's pretty useless to do anything. It won't be on the same level with Grasshopper.

    It's best to just try simple stuff and do that really good than try all the sick shit that's possible with grasshopper.

    Maybe when you have something to show you can create a nice site and ask for donations to keep development alive.

    I'm sure a few people will be interested in it, including me.

    Best of luck !



  5. #5
    Say, isn't this possible with Skin modifier too? At least the Kilian Roof Example - I can't imagine that skin modifier would be capable of that? Perhaps the a simple addon then had to do the transformation from given sliders to the vertices/nodes of the curves the skin modifier is used onto?

    Anyway it's good that you investigate that. Probably I didn't get the purpose and real possibilites properly. Anyway, the name grasshopper is very cool.
    (is it a somewhat extension/UI for a more intuitive way to create mathematical objects? excuse my missing understandings of it [I've no sound currently so didn't hear the explanations])



  6. #6
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    Thanks. Full NURBS tools not possible yet. So i'll do part, that works with mesh, do simpliest things, make the basics of GH with mesh. I have to make basic bricks to manipulate quickly with classes & defs. Thats all for a moment.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  7. #7
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    This week was free to me, & I did that scripts on topics top.
    Ferthere i'll spend free time in it, because it my passion, & interface would be.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  8. #8
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    New script - make edges between two selected objects. make third, connecting vertices 0,1,2,3... not nearest, but it could be done, and would
    maathutils.blend2.png
    some modification, convertation to splines:
    untitled10.png
    untitled9.png

    Code:
    import bpy
    import mathutils
    import math
    
    # сам себе выдал задание:
    # соединить точки двух объектов
    
    
    # достаём объекты
    obj1 = bpy.context.selected_objects[0]
    obj2 = bpy.context.selected_objects[1]
    mw1 = obj1.matrix_world
    mw2 = obj2.matrix_world
    mesh1 = obj1.data
    mesh1.update()
    mesh2 = obj2.data
    mesh2.update()
    #pol1 = mesh1.polygons
    #pol2 = mesh2.polygons
    #edg1 = mesh1.edges
    #edg2 = mesh2.edges
    ver1 = mesh1.vertices
    ver2 = mesh2.vertices
    
    
    def dis(x,y):
        vec = mathutils.Vector((x[0]-y[0], x[1]-y[1], x[2]-y[2]))
        return vec.length
    
    def points(ver1,ver2):
        vert_new = []
        # choosing maximum vertex count in ver1/2, esteblsh vert2 - mincount of vertex
        if len(ver1) > len(ver2):
            inverc = False
            vert1 = ver1
            mworld1 = mw1
            vert2 = ver2
            mworld2 = mw2
        else:
            inverc = True
            vert1 = ver2
            mworld1 = mw2
            vert2 = ver1
            mworld2 = mw1
        # append new verts in new obj
        for v in vert2:
            v2 = mworld2 * v.co
            v1 = mworld1 * vert1[v.index].co
            if inverc == True:
                m1 = mworld2.translation
                m2 = mworld2.translation
            else:
                m1 = mworld1.translation
                m2 = mworld1.translation
            vert_new.append(v2 - m2)
            vert_new.append(v1 - m1)
        return vert_new
    
    def edges(vert_new):
        edges_new = []
        i = -2
        for v in vert_new:
            # dis(vert_new[i],vert_new[i+1]) < 10 and 
            if i > -1 and i < (len(vert_new)):
                edges_new.append((i,i + 1))
            i += 2
        return edges_new
    
    def name():
        return 'slurm_' + str(obj1.name) + '_' + str(obj2.name)
    
    def mk_me(name):
        me = bpy.data.meshes.new(name+'Mesh')
        return me
    
    def mk_ob(mesh,name):
        loc = mw1.translation.to_tuple()
        ob = bpy.data.objects.new(name, mesh)
        ob.location = loc
        ob.show_name = True
        bpy.context.scene.objects.link(ob)
        return ob
    
    def def_me(mesh):
        ver = points(ver1,ver2)
        edg = edges(ver)
        mesh.from_pydata(ver, edg, [])
        mesh.update(calc_edges=True)
        return
    
    def main():
        nam = name()
        me = mk_me(nam)
        ob = mk_ob(me,nam)
        def_me(me)
        return
    
    if __name__ == "__main__":
        main()
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  9. #9
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    For 8 march I prepared compliment script. If you have not words to express your delight about some woman, can use this script. Only thing - it is in Russian, but you can change dictionary manually.
    Code:
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    # Copyright 2013 Городецкий
    # Генератор комплиментов
    # Licensed GPL 3.0
    # http://nikitronn.narod.ru/
    # Python 3,3
    
    
    
    
    import sys
    import codecs
    import random
    
    def w(a):
      return random.choice(a)
    
    def main():
      if len(sys.argv) != 1:
        print ('чё за базар? командуй и всё!')
        sys.exit(1)
      a1 = ['Ты']
      a2 = ['так', "очень", "офигенски", "просто", 'невероятно', 'супер', 'безумно']
      a3 = ['круто','потрясно','вкусно','улётно','клёво','прелестно','замечательно']
      a4 = ['выглядишь','пахнешь','целуешься','печёшь пирожки','двигаешься','танцуешь','готовишь','поёшь','смеёшься']
      a5 = ['пупсик','дорогая','милая','солнце','зайка','как всегда']
      compliment = (str(w(a1))+' '+ str(w(a2))+ ' '+ str(w(a3))+ ' '+ str(w(a4)) + ','+ ' '+ str(w(a5)) + '!')
      print (compliment)
    
      
    if __name__ == '__main__':
      main()
    compliments.jpg
    Last edited by nikitron; 26-Feb-13 at 06:48. Reason: improved script
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  10. #10
    Member
    Join Date
    Jan 2012
    Posts
    1,003
    Hi nikitron,
    really nice job you did there. Maybe you could make a little tutorial on how to use your script ?
    anyway, i wish you all the best and will be following



  11. #11
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    Good idea, will make tutor and improve scripts on free time
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  12. #12
    Member cekuhnen's Avatar
    Join Date
    Mar 2003
    Location
    Grosse Pointe Woods, Michigan, USA
    Posts
    11,980
    Hi there - I am a long time Rhino user and I am delighted to see that you try to bring some grasshopper functionality into Blender. I wish you all good luck with that. On a polygon level I think this could be quite useful. One can still use T-Splines to convert SDS polys to NURBS patches in Rhino.

    Sadly Blender NURBS seems to be out of dev time now. I started a donation website 2008 but it looks it was always low on the priority. There to be honest were more important parts like BMesh and Cycles to get attention.

    But I would be happy in case Blender NURBS at least would get the same level as Maya Nurbs have. Thats enough for most modelers here and specifically also for applications like Grasshopper.


    Looking forward to this to mature more!



  13. #13
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    Thanks for answer. Yes, NURBS is most dependance I cannot walk though. For now i try to make scheme: emptyes(as dots) - splines - lofted mesh. It is hard. Python very slow!!!!
    But Rhino with GH is huge construction, if count addones to GH and addones to addones to GH for Rhino!!! I tired to install all this stuff, beside this my Windows run on virtusl mashine in Ubuntu. You can imagin my dissapointment. So, my Napoleon's plans seems to be limited by NURBs, my time and python.
    Last edited by nikitron; 27-Mar-13 at 17:23.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  14. #14
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    http://www.ia.arch.ethz.ch/2012-03_p...-with-drivers/
    There is something based on drivers.
    Newertheless i go on.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  15. #15
    Member Atom's Avatar
    Join Date
    Jan 2006
    Location
    Ohio
    Posts
    11,632
    one make surface on user formula
    @Nikitron: I have placed the first script into an animated context. So it is possible to 'grow' the surface over time. I based this Formula AddOn on the Parametric Beam Addon which is a frame work for managing mesh generation on a frame-by-frame basis. I do not know a lot about Grasshopper, but good luck on continued development.
    Attached Images Attached Images
    Attached Files Attached Files
    I rarely use Blender anymore.
    Houdini Indie is only $200.00 and Apprentice is free!
    Atom's Links Page



  16. #16
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961
    Originally Posted by Atom View Post
    @Nikitron: I have placed the first script into an animated context. So it is possible to 'grow' the surface over time. I based this Formula AddOn on the Parametric Beam Addon which is a frame work for managing mesh generation on a frame-by-frame basis. I do not know a lot about Grasshopper, but good luck on continued development.
    Nice work. Approach allows realy easy animate. Thanks.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  17. #17
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961

    Here are some renovations, I cooperated with Alexander Nedovizin, he made some useability, but not finished yet. And some fixes of couple bugs. Now it will include nodes!!!!! It's amazing, isn't it?
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  18. #18
    Member nikitron's Avatar
    Join Date
    Aug 2008
    Location
    Fascistic Ukraine
    Posts
    961

    new script

    Look at my new spreading script.
    http://nikitron.cc.ua/blend_scripts.html

    it is animated gif, you can see yourself how it works
    Last edited by nikitron; 16-Aug-13 at 08:41.
    Sverchok
    You can ban me, but cannot ban the Truth of fascism in Ukraine.
    heil bandera evil first second third



  19. #19
    Member ejnaren's Avatar
    Join Date
    Nov 2009
    Location
    Denmark
    Posts
    740
    Your vid looks very cool! A bit techy but definitely very interesting !



  20. #20
    Member
    Join Date
    Jan 2012
    Posts
    1,003
    Hi Nikitron,
    sounds really interesting, but where can we find the script ?



Page 1 of 106 1231151101 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •