External scripting interface to MoI
 1-17  18-31

Previous
Next
 From:  Jamie (FUTUREPROOF)
3341.18 
i'm also interested, but would like to know what you are going to do with it. Are you going to build something to sell or for sharing or is it for show?

Jamie
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Dave Morrill (DMORRILL)
3341.19 
OK, day 3 since the "Aha!" moment, and things are really starting to get interesting. Here's a new screenshot:



I'm writing a Python script now that displays a tree view of all the MoI Python scripts in a certain sub-tree of your file system. You can then select the scripts you are interested in by clicking on them and, if you want, run any or all of them simultaneously (as illustrated in the screenshot). Still early going on this, but it's coming along pretty fast. Maybe a new video tomorrow...

>We're all interested Dave, just too shy to put our hands up.
>Looks potentially very useful I must say.
>
>Dan

Might be a sub-optimal strategy. One of the things I'm trying to figure out by posting here is if there is much interest in this sort of stuff within the MoI community.

>Can you, please, explain how do you have done the graphic interface for the script? It's really amazing.

falcon76, I'll be adding more technical details as it gets fleshed out a bit more. Things are moving pretty fast at the moment, and everything is in quite a bit of flux. As a quick tidbit, here is the current Python script for the random lines UI shown in the screenshot:
""" Create a set of random lines within a specified volume. """
from traits.api import Range, View, Item, SliderEditor
       
slider = SliderEditor( body_style = 25 )

class RandomLines ( MoIScript ):
    lines = Range( 1, 1000, 100 )
    x     = Range( 1, 100, 20 )
    y     = Range( 1, 100, 20 )
    z     = Range( 1, 100, 20 )
    view  = View(
        Item( 'lines', editor = slider ),
        Item( 'x',     editor = slider ),
        Item( 'y',     editor = slider ),
        Item( 'z',     editor = slider )
    )

And here is the corresponding Javascript code that MoI executes:
clear();
_( do_for( %(lines)d, function() {
    return line(
         random_pt( %(x)d, %(y)d, %(z)d ), 
         random_pt( %(x)d, %(y)d, %(z)d ) );
} ) );

Just FYI, the Python stuff is based on a package I've been working on for the last eight years (hint: from traits.api...).

>i'm also interested, but would like to know what you are going to do with it. Are you going to build something to sell or for sharing or is it for show?
>
>Jamie

Don't know yet. I guess that is part of what I'm trying to figure out now. Depends upon how much interest there is and what people are looking for. Right now I've got more ideas than fingers to type with :-)

- Dave Morrill
Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  NightCabbage
3341.20 
This thing will be SO useful!!
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  possum
3341.21 
Very impressive-this will be interesting to see where you can take this.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Jesse
3341.22 In reply to 3341.19 
Dave,

Really interesting! As others have mentioned,
There's enormous potential for your project...

Jesse
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Hamish Mead (HAIRYKIWI)
3341.23 
My first post, so first off, a huge thank you to Michael for MoI! It's the dogs dangly bits! (As they say, where I come from. :-)
----------------------------------------

Dave, Great work - very exciting stuff!

After recently being introduced to Grasshopper for Rhino, I'm very interested in your work too. (Before you ask, I haven't used Grasshopper.)

Grasshopper is described at www.grasshopper3d.com as being, "For designers who are exploring new shapes using generative algorithms, Grasshopper® is a graphical algorithm editor tightly integrated with Rhino’s 3-D modeling tools. Unlike RhinoScript, Grasshopper requires no knowledge of programming or scripting, but still allows designers to build form generators from the simple to the awe-inspiring."

One look in the Grasshopper gallery will show the power of scripting for non-programmers:
www.grasshopper3d.com/photo

It's early days, I appreciate, but can you envisage your MoI driving app being anything like Grasshopper?


- Hamish Mead
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Dave Morrill (DMORRILL)
3341.24 In reply to 3341.23 
> It's early days, I appreciate, but can you envisage your MoI driving app being anything like Grasshopper?

Hmm, good question. I've only looked at Grasshopper briefly, long before I started any of this (and I don't own a copy of Rhino, so it was only a very cursory look), but it is probably worth taking another look. I suspect we are both playing in the same space, but I'll make a note to check it out again, and let you know if I find anything worth thinking about in more detail. Thanks for bringing it up...

- Dave Morrill
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  rhodesy
3341.25 
Blimey, if you could create something like grasshopper for moi that would be very impressive. Some sort of panneling tools would be very much appreciated and quite unexpected. Im no scripter but would love to be a ble to form generative shapes ala grasshopper. Exciting stuff your doing here, thanks a lot.

Rob
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Dymaxion
3341.26 In reply to 3341.19 
Oh, wow, this is absolutely wonderful! I've been meaning to build basically exactly this for years, but it's kept getting punted in favor of other projects. I'm a python programmer and while I still don't have much time, I'd be wonderfully interested in getting the code to play with some time.

/Ella
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Imensah
3341.27 In reply to 3341.20 
This interface will be so useful if it can be expanded to work like grasshopper. Parametric design(especially for architecture and product fabrication) relies heavily on this kind of workflow a lot these days
please take a look at grasshopper or houdini's node based connections as a possible direction.
looking foward to see what can come out of this development.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
3341.28 
If I good understand that is the same than the parametric "Paracloud" but for nurbs ;)
http://www.paraclouding.com/GEM/

Moi + Python + Dave Morill = infinite volume parametric world!

PS We can listen during the video some songs of cock rooster ! ;)

EDITED: 5 Mar 2010 by PILOU

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Dave Morrill (DMORRILL)
3341.29 In reply to 3341.28 
Well, at this point, the code is nowhere near as extensive as Paracloud. Right now there are three main aspects to what I am doing:

- Documenting the MoI low-level API used by the tools currently in MoI.
- Creating a simple procedural library that sits on top of the low-level API.
- Creating an external scripting interface that allows external programs to control MoI using either the low-level or procedural API.

So the potential is there to do some more elaborate things, but what is there now are just small baby steps in that direction.

As to the rooster, I guess I missed that since I never even notice them myself anymore. They are just a fact of life here in the Philippines ;-)

- Dave Morrill
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
3341.30 In reply to 3341.29 
Thx for all the precisions!
---
Pilou
Is beautiful that please without concept!
My Gallery
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  AlexS (ALEKSEI)
3341.31 
Dave, I'm very interested in your development, because I really want to learn how to write scripts. I have a question. When will be available to download your design? First and foremost I am not interested in Python interface itself, and the ability to write scripts in notepad and see the result at the same time in the program.

Thank you.

Russian:
Дэйв, меня очень интересует твоя разработка, так как я очень хочу научиться писать скрипты. У меня вопрос. Когда будет доступна для скачивания твоя разработка? В первую очередь меня интересует не сам интерфейс на питоне, а возможность писать сценарии в блокноте и одновременно видеть результат в программе.

Спасибо.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
 
Show messages:  1-17  18-31