You can create an instance of ptolemy.kernel.util.Location as an attribute of each actor.
Edward
At 06:10 PM 3/27/2005 +0000, Libaoy wrote:
Hello Hackers,
I am newer to Ptolemy and Jython. My question is how to locate actor in GraphPane. Following is my Jython code that runs OK. But all actor are located in topleft of GraphPane. I can drag and move them. But I want know how to use jython code to move them ?
Thanks,
###################################################
from java.awt import BorderLayout from java.awt import Dimension from javax.swing import JFrame
from ptolemy.vergil.actor import ActorGraphModel from ptolemy.vergil.actor import ActorViewerGraphController from diva.graph import GraphPane from diva.graph import JGraph
from ptolemy.kernel.util import Workspace from ptolemy.actor import TypedCompositeActor from ptolemy.actor import Manager from ptolemy.actor.gui import CompositeActorApplication from ptolemy.domains.de.kernel import DEDirector from ptolemy.actor.lib.gui import TimedPlotter from ptolemy.actor.lib import Clock
if __name__ == '__main__': workSpc = Workspace() topLevelActor =TypedCompositeActor(workSpc) topLevelActor.setName("universe") manager = Manager(workSpc, "manager") director = DEDirector(topLevelActor, "director") topLevelActor.setDirector(director) director.stopTime.setExpression("10.0") topLevelActor.setManager(manager) clock = Clock(topLevelActor,"clock") plotter = TimedPlotter(topLevelActor,"plotter") iinput = plotter.getPort("input") topLevelActor.connect(clock.output, iinput) controller = ActorViewerGraphController() model = ActorGraphModel(topLevelActor) pane = GraphPane(controller,model) modelViewer = JGraph(pane) size = Dimension(400,300) modelViewer.setMinimumSize(size) modelViewer.setPreferredSize(size) frame = JFrame() frame.setSize(600,400) frame.getContentPane().add(modelViewer,BorderLayout.CENTER) frame.setVisible(1) application = CompositeActorApplication() application.startRun(topLevelActor) application.waitForFinish() #################################################
---------------------------------------------------------------------------- Posted to the ptolemy-hackers mailing list. Please send administrative mail for this list to: [EMAIL PROTECTED]
------------
Edward A. Lee
Professor, Chair of the EE Division, Associate Chair of EECS
231 Cory Hall, UC Berkeley, Berkeley, CA 94720
phone: 510-642-0253 or 510-642-0455, fax: 510-642-2845
[EMAIL PROTECTED], http://ptolemy.eecs.berkeley.edu/~eal
---------------------------------------------------------------------------- Posted to the ptolemy-hackers mailing list. Please send administrative mail for this list to: [EMAIL PROTECTED]