Running external module and accessing the created objects

Dave Angel davea at davea.name
Sat Mar 9 17:12:56 CET 2013


On 03/09/2013 10:34 AM, Kene Meniru wrote:
> OK. Sorry to have caused all the confusion. Let me try this again.
>

Thank you very much.  This is much clearer, though it's not all here.

> To use my program the user needs a script file I will call user.py.
> Functions from my program must be imported into this file with
> something like "from myapp import *".

And does the user run this script by doing
     python  user.py

>
> myapp.py is a module in my program that has all the functions that the
> user needs to describe building components. There is also a main
> controller object that is imported into myapp.py module called app.
>
> When python parses user.py module,

You presumably mean, "When Python runs the script user.py"

> the functions the user has provided
> creates building components which are then saved in a dictionary
> located in an object called doc that is part of my program.

What program is that?  Looks to me like you're writing a series of 
modules, a framework perhaps, that is invoked by the user script.

>
> The user is free to use the functions in myapp.py to describe building
> components. When this process is complete or when the user wants to
> view their work-in-progress, they have to place a function called
> view() on the last line in user.py.

Don't you mean the code in user.py has to *call* the function app.view() 
when they're all done with defining the components?  That has nothing to 
do with being the last line.

> This function currently exports

You mean writes files into the file system?

> the components into POV-Ray or OpenSCAD format. These are CAD programs
> that read script files to render or create images of the described
> artifacts. So this means that to view their work the user needs to run
> python on user.py to export the building and then run POV-Ray or
> OpenSCAD on the exported file to see the building.

At that point, the user.py script has completed, and Python is done, right?

>
> I want to make it possible for the user to preview the building
> components without having to use the external rendering programs. I
> can currently have the app object provide this preview but it means
> that the user will have to process user.py with python then exit the
> graphic window each time they need to see changes.

What changes are those?  You can't change a script while it's executing. 
  Could you clarify this so I can rethink the following paragraph?

>
> So the solution I am looking for is to have a graphic window open that
> watches user.py for changes. If there is a change the graphic window
> updates the rendition of the created components without further
> intervention by the user. However this means that the graphic must
> somehow run python to parse user.py and then be able to access the
> objects stored in doc so that the coordinates can be used to update
> the view. This is where I am having difficulty.
>
> I hope this is clearer.
>



-- 
DaveA



More information about the Python-list mailing list