Jump to content

Ilay

Member
  • Posts

    88
  • Joined

  • Last visited

Posts posted by Ilay

  1. Hello

    Small tip for vw2017 and maybe for vw2016 users

    I found that vw2017 use old(2015) api of SketchUP. - slapi.dll - 15.3.331, Windows OS version.

    need SketchupAPI.dll(x64) from sketchUp 2016 sdk(for example i have SDK_Win_16-0-19911), copy to root of vw2017(6) and rename-replace  slapi.dll   - so you will able to load skp files from sketchup 2016(older too).
    sketchUp 2016 sdk can be downloaded from developer section of sketchup site

  2. @Ilay I did not even got to work ktinker to work. This was just a test and would be not very helpful because ktinker do not much more, than the internal dialog features can do. Even if I am not a fan of using too much third party stuff

    Yeah, i got several problems with instancing of qt[app] declaration. I got several tests with normal behavior before marionette definition > outside of this class.

    Today, i only have view to use inside of normal script's body, not marionette

  3. Hello Sarah

    It's very useful. Thank you

    Can post such example?

    I will post code which inside in any dummy node(not wrapper) and somebody can to put it into node code(for example one of points category nodes) + also if you install scipy, numpy(python extesions)

    Code based at such code and frensel functions of scipy

    '''
    Based at http://stackoverflow.com/questions/13308573/scipy-what-are-the-arguments-in-scipy-special-fresnelx-out1-out2
    
    '''
    @Marionette.NodeDefinition
    class Params(metaclass = Marionette.OrderedClass):
    this = Marionette.Node('Frensel Points')
    this.SetDescription('Create scipy.frensel Points')
    npts = Marionette.OIPControl( 'Number of points', Marionette.WidgetType.Int, 100)
    npts.SetDescription('Number of points at curve')
    curlsn = Marionette.OIPControl( 'Number of curls', Marionette.WidgetType.Int, 3)
    curlsn.SetDescription('Number of curls')
    sca = Marionette.OIPControl( 'Scale', Marionette.WidgetType.Bool, False)
    sca.SetDescription('Scaled version')
    scan = Marionette.OIPControl( 'Scale', Marionette.WidgetType.Int, 1)
    scan.SetDescription('Scale of curve')
    pt = Marionette.PortOut()
    pt.SetDescription('Frensel Points on the xy plane')
    
    def RunNode(self):
    import numpy as np
    from scipy.special import fresnel
    
    num = self.Params.npts.value
    curl = self.Params.curlsn.value
    sca = self.Params.sca.value
    scalen = self.Params.scan.value
    
    t = np.linspace(-curl, curl, num, endpoint=True)	
    ss, cc = fresnel(t / np.sqrt(np.pi / 2))
    scaled_ss = np.sqrt(np.pi / 2) * ss
    scaled_cc = np.sqrt(np.pi / 2) * cc	
    if sca:
    	fpts = []
    	for i in range(num):
    		fpts.append((scaled_ss[i]*scalen, scaled_cc[i]*scalen, 0.0))
    	self.Params.pt.value = fpts
    else:
    	fpts = []
    	for i in range(num):
    		fpts.append((ss[i], cc[i], 0.0))
    	self.Params.pt.value = fpts

  4. it was comparable with maya and softimage then. from what i hear it will be interesting in the future.

    yes, but let's back to vw and Marionette - it's very helpful addition.

    I read somewhere over forum, that why only python drives code. Ok, if we look at net, we can find many additional packages and extensions for python and can extend it:

    • numpy and scipy -> i used scipy in GIS(ArcGIS) and Road design(used in topomatic robur); numpy - arrays for volumes...
    • color analysis extensions ... for design, spotlight maybe
    • and etc.

    and by nodes we can create scenario of project or part of project -> like mind map

  5. hmm, houdini was once the most parametric 3d character animation application on the market, did it change in those years?

    if you compare those tools, i'm curious what can you say about marionette?

    rob

    no-no, it's not only character tool, mostly vfx/fx package(i used it as destruction tool when had freelance work in 2010-2011 years).

    I mean it uses node-based editor to create any kind of tools for it, procedural cities, windows and etc.

  6. One would be to name the object you want to use as the path. Then in the Marionette network you could access the object by name and use it as you want.

    yes, name is "mypath" alias in data name of poly-line and scatter by duplicating of circles

    (i forgot to filtered number of points to duplicate-node)

    i made such

  7. Thank you for link

    Great, for that was simplified:

    Creating and Editing Nodes

    By default, the Marionette tool provides a wide variety of nodes that are ready for use. Creating custom nodes is possible through editing a pre-existing node and changing the script; however, this requires a familiarity with Python and VectorScript, and is not recommended for users unfamiliar with scripting.

    I mean - not only c++(capi)

×
×
  • Create New...