3d scene 3d object

Hi all,
I have this problem: I'm creating a functional global variable that creates a 3d scene with x,y,z axes, then updates it adding 110 little 3d spheres. My problem is that when I create the scene with axes the result is a scene node refnum, and so I cannot add to this scene the spheres, because their property is scene object refnum. How could I manage it?
Here's the vi. The main is called Main Test.vi
Thank you!
Luke
Attachments:
ODScaler LabVIEW.zip ‏118 KB

Instead of having a 3D picture as a terminal on your sub-VI right-click the wire from the axis and select "Create Indocator".  then delete the 3D picture on your sub-VI and use the newly-created control instead.
Shane.
Say hello to my little friend.
RFC 2323 FHE-Compliant

Similar Messages

  • 3D repousse objects and linking / rotation question

    In Photoshop CS5 Ext, I have 4 layers, each with a 3D repousse object on them. I want to somehow link them, so that I can rotate the object as a whole (or the camera), but also want to still be able to manipulate the objects separately (like rotate and position). Is there a way to do this in PS, or does this need to be done in another program like Flash? Tried unsuccessfully using merge 3D, linking, grouping...
    Thanks,
    John

    Thanks Steve for the reply and screenshot.
    I see that 3D panel will let me rotate, etc., but it doesn't look like I will be able to rotate objects separately using animation from the timeline, will it? That is another thing I forgot to mention that I want to do, is be able to animate (rotate and move) the objects separately.
    Thanks,
    John
    From: SG... <[email protected]>
    To: PSJK2011 <[email protected]>
    Sent: Sunday, September 25, 2011 9:37 PM
    Subject: 3D repousse objects and linking / rotation question
    Re: 3D repousse objects and linking / rotation question created by SG... in Photoshop Windows - View the full discussion
    Hi John,
    Merging 3D layers should be what you want. When you tried this what failed? If it was that you could only transform all of the objects instead of each separate object, then you'll need to make sure you are using the appropriate 3D tool. The UI needs some work to make this a bit easier to discover.
    There are 3D Mesh tools in the 3D panel that allow you to manipulate individual meshes, instead of the whole scene (3D Object tools).
    http://forums.adobe.com/servlet/JiveServlet/downloadImage/2-3937802-84277/176-600/3DMeshTo ll.png
    regards,
    steve
    Replies to this message go to everyone subscribed to this thread, not directly to the person who posted the message. To post a reply, either reply to this email or visit the message page: http://forums.adobe.com/message/3937802#3937802
    To unsubscribe from this thread, please visit the message page at http://forums.adobe.com/message/3937802#3937802. In the Actions box on the right, click the Stop Email Notifications link.
    Start a new discussion in Photoshop Windows by email or at Adobe Forums
    For more information about maintaining your forum email notifications please go to http://forums.adobe.com/message/2936746#2936746.

  • When I create some 3D objects in Photoshop CS6 (a good example would be one of a dinner-plate), artefacts always show on the surface of the plate.

    Hello! The title of this message says it all, really (When I typed the above, I thought that I was typing the actual message, since I had been invited to ask a question). So, can anyone please help with this problem. The plates look as if they have wedges of the spread-type cheeses that can be bought in a circular pack, only they are bigger than those would be on a plate, and black.
    With thanks in anticipation,
    True To Form

    I started with 3D in my teens (Amiga Sculpt/Animate 4D 1987) - from a personal perspective I "grew up" with 3d applications.
    I have taught Blender (and other 3d application) classes, though, and like any other software it depends a bit on the person. If you have never used a 3d application before, then Blender is relatively easy to pick up. The basic tutorials on Blender Cookie (and many other sites) are easy to follow. Learning 3D is fun, and can also be intimidating at times, because there is so much to learn in terms of scope.
    My advice is to pick your battles: the above image is not that hard to recreate in Blender (together with that tutorial) once you understood the basic GUI and handling of Blender.
    The funny thing is that when 3D was introduced in Photoshop, I kept thinking and wondering why the developers made it so unintuitive and hard to use. It is quite slow and cumbersome - compared to Cinema 4D, Blender, Max, Lightwave, and so on, Photoshop's 3d always kills me. I just do not want to deal with it - and the quality is well below par compared with the current state of rendering technology. I am not saying it is useless (far from it), just that once you become aware of what is out there, and are dazzled by what even free software such as Blender can pull off, it sort-of becomes a "frog leaves the well" paradigm shift.
    Point in case: the above image is completely CG and done in Blender. And if you have a decent Nvidia GPU you can even render on the GPU (many times faster). In the above tutorial the instructor looks around the scene while it is rendering in almost real-time - thanks to Blender's GPU renderer. Change a material, and see it update in almost real-time. Splendid! Compare that to Photoshop's archaic and dead-slow renderer, and you will never want to go back.
    Here are the demo reels for 2014 and 2013 to get a basic idea of what Blender is capable of nowadays. It's insane to think this is freely available to anyone! And if you like After Effects: Blender has smoke and fluid sims, as well as a nodal compositor with full 3d scene and object tracking. Passes can be sent to After Effects and Photoshop for further editing.

  • Problem with bit rate ?

    Hi there,
    Using FCP7.
    After compressing a FCP project with Compressor and burning DVDSP with DVDSP, I realized that  scenes containing objects or people in rapid movement where showing jerked images.
    The slow motion scenes are fine.
    I checked the following
    settings for DVDSP burning: VBR two pass;
    averageBit rate  4,0,
    max rate 7,0
    1) the self-contained QT that I started with is not showing this problem.
    2) the m2v file obtained from compressor (I use preset setting for high quality compression) does not show this problem when I view it with MPEG streamclip
    3) I tried to burn directly the QT file  with Toast 10 …get same problem if not worse !.
    settings for Toast
    automatic re-encoding
    average rate 4,0 Mbps
    max bit rate 8,0 Mbps
    MPEG-2
    I guess my problem comes from the bit rate I used ?
    I am now confused and I am not sure I understood the impact of the bit rate setting on the quality of the resulting DVD, and I believe that using a high bit rate in DVDSP might result in problems for some clients to play the DVD on their player ?
    Could it be something else ?
    could someone please give me advice ?
    Many thanks in advance
    Ivan

    I can only think of two possibilities based on the info available:
    1. Old DVD player (choking on the bitrate spike)
    2. You need to set some compression markers around the scenes while in FCP. This would flag Compressor to pay extra attention to that area. After you output the new clip, I suggest you use the standard High Quality preset (in Compressor) for your program duration e.g., "Highest Quality 90 minute". Don't get creative with the encoding set-up. And ALWAYS used AC-3 audio.

  • Printing w/ Scale Width & Height Setting?

    With CS4 and CS5.
    When I put in a percentage in the Height Box and then Print the InDesign document, InDesign remembers the percentage. But when I put a percentage in the Width Box InDesign does not remember the number, ie, if I put in 98.52% it reverts to 98% in the Width Box. The Height remembers all digits.
    Thanks for any one's help

    CSS documentation (http://docs.oracle.com/javafx/2.0/api/javafx/scene/doc-files/cssref.html) states:
    "JavaFX CSS does not support CSS layout properties such as float, position, overflow, and width. However, the CSS padding and margins properties are supported on some JavaFX scene graph objects. All other aspects of layout are handled programmatically in JavaFX code."
    I thought you might be able to do something using the -fx-shape property, but the shape does not affect the size of the button - so that didn't work.
    I had more luck with the -fx-graphic property - you could try to enhance the stylesheet below to get what you want.
    .root   { -fx-background-color: azure; -fx-padding: 20; }
    #smurf-button { -fx-graphic: url("http://bluebuddies.com/smurf_fun/smurf_race/jpg/Smurf_Race_100x100.jpg"); -fx-background-color: transparent; }
    #smurf-button:hover { -fx-effect: dropshadow( three-pass-box , rgba(184,134,11,0.6) , 20, 0.0 , 0 , 0 ); }
    #smurf-button:armed { -fx-effect: innershadow( three-pass-box , rgba(0,200,0,0.6) , 30, 0.0 , 0 , 0 ); }
    public class ButtonStyle extends Application {
      public static void main(String[] args) throws Exception { launch(args); }
      public void start(final Stage stage) throws Exception {
        final Button button = new Button();
        button.setId("smurf-button");
        final Scene scene = new Scene(StackPaneBuilder.create().children(button).build());
        scene.getStylesheets().add(this.getClass().getResource("style.css").toExternalForm());
        stage.setScene(scene);
        stage.show();
    }

  • Tool Bar too jacked-up for consumer level PDF

    Sooner or later 3D interactive will saturate our culture. And Acrobat 3D is a great step, but it is targeted toward engineers and not consumer level marketing. 
    I want to produce these great PDFs for consumer level product marketing, but the Tool Bar is too feature rich for consumers. The tools are okay, let’s keep them, but the default tool, ROTATE, is just infuriating (not a good thing).
    I have been on the creative end of advertising for over 30 years, working with 3D for last ten years, and I do some coding from time to time, so I am not afraid of a challenge. I know this: a picture is worth a thousand words, a moving picture is worth ten thousand words, a 3D interactive needs NO words.
    Adobe has taken a giant 3D step with Acrobat, but the company now seems to be pulling away. Broad consumer level acceptance will generate the demand for Acrobat 3D, the engineering market is not big enough by itself. Here is my problem, the TOOL BAR requires an engineering degree, it is far beyond the consumer’s attention span and comprehension. Consumers are not engineers, but they do know how to use a mouse.
    So here is my consumer level wish list for Adobe Acrobat 3D:
    Remove the TOOL BAR and the RIGHT CLICK SUBMENU entirely from the annotation. When I say "Remove" I want it disabled, and make it not visible on a tool-by-tool basis. Keep the TOOL BAR as part of Acrobat 3D, but I need to manage it for the sake of consumers and my product. I don't want customers seeing it and wondering why they can get a tool to work, or wondering what they are missing because of a grayed-out feature. I want their attention on the product offered in the PDF. (I can NOT do this yet)
    Make SPIN the default movement tool and the only tool. (I CAN do this, thanks to this forum and javascript discussions)
    I need to restrict the rotation of the SPIN tool from going below the ground plane, and adjust the friction of the SPIN tool, some models move too fast in the environment. (I can NOT do this yet)
    The default arrowhead cursor does nothing to promote (set apart, distinguish, or announce) the 3D environment. When a consumer has a cursor over an activated 3D annotation the cursor should communicate that fact. The right cursor for this job is the "move" cursor (looks like the PAN TOOL icon). I need to set the MOVE icon as the default 3D icon (I can NOT do this yet)
    Create a 2D layer in front of the 3D scene to place stationary JPGs and TEXT in front of the 3D annotation. This can be useful for placing custom view buttons, ON/OFF buttons, transparency sliders in the scene, or toggling between one or two model render modes or different lighting schemes. (I can NOT do this yet)
    As I said before, “remove the RIGHT CLICK SUBMENU entirely” because it is the can of worms as the TOOL BAR. But I do want to be able to customize the RC SUBMENU when a consumer clicks on a part of the 3D model. When they right click, they should get a submenu of features, options, properties that relate to my product offer. (I can NOT do this yet)
    And finally, URL connectivity. That RIGHT CLICK SUBMENU has a feature like: make reservation, order this part, add to cart. (I can NOT do this yet)
    Now that will accelerate Acrobat 3D. Anybody know how to accomplish these features?
    Greg

    OK, in order:
    1 - you can disable the toolbar using the 3D annotation's properties, but you cannot disable the context (right-click) menu or edit the entries. You can add buttons to the toolbar to a very limited extent using JS, and can en/disable tools by name, but can't replace the entire thing and can't affect the other dropdowns (like the lighting or rendering menus)
    2 - easy with JS, as you already know: runtime.setCurrentTool('Spin');
    3 - also possible with JS, but complex to implement as you have to re-write the camera handling functions and do some polar geometry math. There are some examples from Directlight which use a ground-collision script for architectural renders inside a "sky bubble", but the script they use is copyrighted.
    4 - we don't give any access to the cursor icons, period.
    5 - You can do this in several ways; either with a watermark layer on the PDF, or using a SWF embedded in the 3D scene and some JS to load the SWF as a "scene foreground object". I've covered a lot of this on the Acrobatusers.com tutorials, but will be talking more about it in upcoming shows.
    6 - see q1
    7 - very commonly-done using JS, and probably the main thing scripts in 3D PDFs are used for. There are "3D order form" examples all over the Web, which use a script to override the default selection handler in the 3D scene, check the name of the mesh node being clicked, and then fire something out to the PDF (such as filling in a form field, opening a document, etc.) - suggest you grab one and poke about inside, as the handlers are all pretty much the same.
    It's important to note that the display of a 3D annot is handled by a plugin shipped with Acrobat and Adobe Reader, and this plugin decides what toolbars, menus, etc. appear. Because plugins don't generally expose themselves to each other, you couldn't override the default 3D toolbar even if you wrote a "plugin plugin", and there are no plans to change the customization options (or lack thereof). I agree with you that some of the tools and context items are a little obscure for Joe Public, but they were indeed designed for use by engineers! 3D PDF came about so CAD/CAM data could be exchanged and reviewed, so it was realistic to expect people opening the files were savvy in how to work with 3D models. They've grown to be more public-facing, but even today the vast majority of 3D PDFs are passed from one engineer to another, who both probably use a Space Pilot instead of the toolbar commands.

  • How to add layout constraints in CSS?

    Is there a way to specify layout constraints in CSS? For example how can I specify that the first column in a GridPane should be aligned right? This can be done programmatically by adding a column constraint to a GridPane, like here:
    GridPane gridpane = new GridPane();
    ColumnConstraints column = new ColumnConstraints();
    column.setHalignment(HPos.RIGHT);
    gridpane.getColumnConstraints().add(column);

    As far as I understand it this is not supported in CSS. In general size and layout is not included in JFX CSS by design:
    JavaFX CSS does not support CSS layout properties such as float, position, overflow, and width. However, the CSS padding and margins properties are supported on some JavaFX scene graph objects. All other aspects of layout are handled programmatically in JavaFX code.
    This is from: http://download.oracle.com/javafx/2.0/api/javafx/scene/doc-files/cssref.html
    This is a bit limiting at times as they are often heavily related. I imagine it was a decision around separation of concerns - I'm not sure yet whether this is a good idea or not.
    [url http://download.oracle.com/javafx/2.0/api/javafx/fxml/doc-files/introduction_to_fxml.html]FXML is worth a look at for making layouts as scripts, that non-Java programmers can work with. It doesn't solve the 'style' issue but might go some way to help you.
    Cheers,
    zonski
    Did you find this answer useful? If so, please mark as 'Correct' or 'Helpful'.

  • "Wish-list" to JavaFX

    <!--
    @page { margin: 2cm }
    P { margin-bottom: 0.21cm }
    H1 { margin-bottom: 0.21cm }
    H1.western { font-family: "Times New Roman", serif }
    H1.cjk { font-family: "Lucida Sans Unicode" }
    H1.ctl { font-family: "Tahoma" }
    -->Review/&rdquo;wish-list&rdquo; for JavaFX/NetBeans
    The following &ldquo;wish-list&rdquo; for JavaFX (1.1) and NetBeans (1.5), was made based on my experience doing three - smaller - projects in JavaFX. I plan to submit these projects (&ldquo;DestroyerFX&rdquo;, &ldquo;AceOfSpadeFX&rdquo; and &ldquo;SteamPunkWatch&rdquo;) to the &ldquo;JavaFX Coding Challenge&rdquo; (see &ldquo;http://www.javafx.com/challenge/&rdquo;):
    - a &rdquo;recreate&rdquo;-method for &ldquo;CustomNodes&rdquo; in style of the &rdquo;repaint&rdquo;-method of &rdquo;java.awt.Component&rdquo;. Should force the (re)call of &ldquo;create&rdquo;-
    method of a &ldquo;CustomNode&rdquo;-objects (normally &ldquo;create&rdquo; is only called once &ndash; the first time the &ldquo;CustomNode&rdquo; is drawn).
    Useful for &ldquo;CustomNodes&rdquo; changing their graphical expression over time, other than what may be expressed by using transformations.
    Solutions to the problem (using the existing system) could be:
    - reconstruct &ldquo;CustomNode&rdquo;'s for each iteration, or when they need to change their graphics. This would force a (re)call to the &ldquo;create&rdquo;-
    method
    - using a &ldquo;Group&rdquo; (or &ldquo;Sequence&rdquo;) to group different graphical representations/&rdquo;Nodes&rdquo;. The &ldquo;visible&rdquo;-attributes are manipulated to change
    between different representations
    - better support in NetBeans for export of projects as executable JAR-files. Useful for people wanting to distribute their application more in
    the style of traditional applications
    - default-values &ldquo;http://localhost:8082/servlet/...&rdquo; in generated *.jnlp files (by NetBeans) should be changed to relative-path &ldquo;file:.&rdquo;. This would
    make distribution of projects easier.
    I don't know if this already is possible in present system, by for instance setting up NetBeans
    - merge of Java and JavaFX (-script language). Basically features of JavaFX should be included in Java.
    For object-construction-syntax, I suggest some thing like:
    (new) MyClass(parm1,parm2, ...) {
    attr1: ...,
    attr2: ...,
    i.e. first the normal Java-constructor is called, hereafter attributes are assigned in JavaFX-style.
    JavaFX &ldquo;bindings&rdquo; could be a good alternative to &ldquo;Beans Bindings&rdquo; (JSR 295).
    I think both technologies (object-construction and bindings), would be a great addition to the Java-language, and could prove useful in other
    areas than just GUI's.
    The JavaFX API should further be accessible from Java
    - having a project of mixed Java- and JavaFX-files, I wasn't able to &ldquo;see&rdquo; JavaFX-files from Java-files in NetBeans. It would be nice to be able
    to do this, since I still consider Java as a better general-purpose language (for larger projects); and people might have older Java-code they
    may want to incorporate in their JavaFX-projects. I think, I recall some forums talk about this topic, but the solution isn't obvious anyway
    - problems playing sound-clips with the JavaFX &ldquo;MediaPlayer&rdquo; (multiple clips are played at the same time in my application). According to
    forums, this could be due to the sound-files being placed in JAR-files.
    In my projects I &ldquo;cheated&rdquo; by using the JavaSE-primtives for this (&ldquo;javax.sound.sampled&rdquo;). It would be nice if this could be fixed
    - in one of my applications (&ldquo;DestroyerFX&rdquo;), I wanted to use dynamic binding of the &ldquo;Scene&rdquo; of the central &ldquo;Stage&rdquo;-object, allowing the
    application to switch between a number of difference &ldquo;Scene&rdquo;'s according to functionality and context (&ldquo;introduction&rdquo;, &ldquo;level-up&rdquo;, actual game
    and &ldquo;final score&rdquo;). When running the application as a web-browser applet, this approach didn't seem to work (the application was stuck on
    first shown &ldquo;Scene&rdquo;). I recall some forums-posts discussing this.
    My solution to the problem was to reformulate the difference &ldquo;Scene&rdquo;-objects to &ldquo;Group&rdquo;-objects, swifting between the different
    &ldquo;Scene&rdquo;/&rdquo;Group&rdquo;'s by manipulating their &ldquo;visible&rdquo;-attribute.
    A performance problem was discovered in a &ldquo;Group&rdquo; having a &ldquo;content&rdquo; consistent of &ldquo;Sequences&rdquo; with dynamic changing content. I solved
    this by extracting the &ldquo;Sequences&rdquo; from the group, making them &ldquo;first-generation&rdquo; children of the &ldquo;Stage&rdquo;, i.e. going from:
    var grp1 : Group = Group {
    content: [ seq1, seq2, ...],
    var grp2 : Group = Group { ... };
    var actualGroup : Group = ...;
    Stage {
    scene: Scene {
    content: bind [ actualGroup],
    ... to:
    var grp1 : Group = Group {
    content: [ ...],
    var grp2 : Group = Group { ... };
    var actualGroup : Group = ...;
    Stage {
    scene: Scene {
    content: bind [ seq1, seq2, actualGroup],
    With the critics giving, I owe people to say that my overall impression of the JavaFX-system (and NetBeans) has been very positive and
    satisfying. I hope for future development and deployment on diverse platform of the system.
    Fell free to comment, give solutions to problems and make new &ldquo;wishes&rdquo;.
    Regards

    Darn Rich Text-editor:
    Review/”wish-list” for JavaFX/NetBeans
    The following “wish-list” for JavaFX (1.1) and NetBeans (1.5) was made
    based on my experience doing three - smaller - projects in JavaFX. I plan
    to submit these projects (“DestroyerFX”, “AceOfSpadeFX” and
    “SteamPunkWatch”) to the “JavaFX Coding Challenge”
    (see “http://www.javafx.com/challenge/”):
    - a ”recreate”-method for “CustomNodes” in style of the ”repaint”-method
    of ”java.awt.Component”. Should force the (re)call of “create”-method
    of a “CustomNode”-object (normally “create” is only called once – at
    the first time the “CustomNode” is drawn)
    Useful for “CustomNodes” changing their graphical expression over time,
    other than what may be expressed by using transformations.
    Solutions to the problem (using the existing system) could be:
    -- reconstruct “CustomNode”'s for each iteration, or when they need
    to change their graphics. This would force a (re)call to the “create”-method
    -- using a “Group” (or “Sequence”) to group different graphical representations/
    ”Nodes”. The “visible”-attributes are manipulated to change between
    different representations
    - better support in NetBeans for exporting of projects as executable
    JAR-files. Useful for people wanting to distribute their application
    more in the style of traditional applications
    - default-values “http://localhost:8082/servlet/...” in generated *.jnlp-
    files (by NetBeans) should be changed to relative-path “file:.”. This
    would make distribution of projects easier.
    I don't know if this already is possible in present system, by for
    instance setting up NetBeans
    - merge of Java and JavaFX (-script language). Basically features of
    JavaFX should be included in Java.
    For object-construction-syntax, I suggest some thing like:
    (new) MyClass(parm1,parm2, ...) {
                attr1: ...,
                attr2: ...,
            }i.e. first the normal Java-constructor is called, hereafter attributes
    are assigned in JavaFX-style.
    JavaFX “bindings” could be useful as an alternative to “Beans Bindings”
    (JSR 295).
    I think both technologies (object-construction and bindings) would be a
    great addition to the Java-language, and could prove useful in other
    areas than just GUI's.
    The JavaFX API should further be accessible from Java
    - having a project of mixed Java- and JavaFX-files, I wasn't able to
    “see” JavaFX-files from Java-files in NetBeans. It would be nice to be
    able to do this, since I still consider Java as a better general-purpose
    language (for larger projects); and people might have older Java-code
    they may want to incorporate in their JavaFX-projects. I think I
    recall some forums talk about this topic, but the solution isn't
    obvious anyway
    - problems playing sound-clips with the JavaFX “MediaPlayer” (multiple
    clips are played at the same time). According to forums, this could be
    due to the sound-files being placed in JAR-files.
    In my projects I “cheated” by using the JavaSE-primitives for this
    (“javax.sound.sampled”). It would be nice if this could be fixed
    - in one of my applications (“DestroyerFX”), I wanted to use dynamic
    binding of the “Scene” of the central “Stage”-object, allowing the
    application to switch between a number of difference “Scene”'s
    according to functionality and context (“introduction”, “level-up”,
    actual game and “final score”). When running the application as a
    web-browser applet, this approach didn't seem to work (the application
    was stuck on first shown “Scene”). I recall some forums-posts discussing
    this.
    My solution to the problem was to reformulate the different “Scene”-objects
    to “Group”-objects, swifting between the different “Scene”/”Group”'s by
    manipulating their “visible”-attribute.
    A performance problem was discovered in a “Group” having a “content”
    consistent of “Sequences” with dynamic changing content. I solved this
    by extracting the “Sequences” from the group, making them
    “first-generation” children of the “Stage”, i.e. going from:
    var grp1 : Group = Group {
                content: [ seq1, seq2, ...],
            var grp2 : Group = Group { ... };
            var actualGroup : Group = ...;
            Stage {
                scene: Scene {
                    content: bind [ actualGroup],
            }... to:
    var grp1 : Group = Group {
                content: [ ...],
            var grp2 : Group = Group { ... };
            var actualGroup : Group = ...;
            Stage {
                scene: Scene {
                    content: bind [ seq1, seq2, actualGroup],
            }With the critics giving, I owe people to say that my overall impression of
    the JavaFX-system (and NetBeans) has been very positive and satisfying. I
    hope for future development and deployment on diverse platform of the system.
    Fell free to comment, give solutions to problems and make new “wishes”.
    Regards

  • Setting width/height of a control with CSS

    Hi,
    I am styling a button a button in CSS and set a background-image for the button in my stylesheet.
    The problem is, that the button should scale to the width/height of the image.
    I added:
    -fx-width: 32px;
    -fx-height: 32px;
    but it has no effect.
    I also tried it with
    -fx-min-width: 32px;
    -fx-min-height: 32px;
    If I use setMinWidth(32); in Java, it works.
    But I rather want to set it in my stylesheets, because the image can change, if we use another skin.

    CSS documentation (http://docs.oracle.com/javafx/2.0/api/javafx/scene/doc-files/cssref.html) states:
    "JavaFX CSS does not support CSS layout properties such as float, position, overflow, and width. However, the CSS padding and margins properties are supported on some JavaFX scene graph objects. All other aspects of layout are handled programmatically in JavaFX code."
    I thought you might be able to do something using the -fx-shape property, but the shape does not affect the size of the button - so that didn't work.
    I had more luck with the -fx-graphic property - you could try to enhance the stylesheet below to get what you want.
    .root   { -fx-background-color: azure; -fx-padding: 20; }
    #smurf-button { -fx-graphic: url("http://bluebuddies.com/smurf_fun/smurf_race/jpg/Smurf_Race_100x100.jpg"); -fx-background-color: transparent; }
    #smurf-button:hover { -fx-effect: dropshadow( three-pass-box , rgba(184,134,11,0.6) , 20, 0.0 , 0 , 0 ); }
    #smurf-button:armed { -fx-effect: innershadow( three-pass-box , rgba(0,200,0,0.6) , 30, 0.0 , 0 , 0 ); }
    public class ButtonStyle extends Application {
      public static void main(String[] args) throws Exception { launch(args); }
      public void start(final Stage stage) throws Exception {
        final Button button = new Button();
        button.setId("smurf-button");
        final Scene scene = new Scene(StackPaneBuilder.create().children(button).build());
        scene.getStylesheets().add(this.getClass().getResource("style.css").toExternalForm());
        stage.setScene(scene);
        stage.show();
    }

  • 3D Tool in Photoshop

    I am somwhat new to photoshop 3d and lost my 3D tool. I clicked on the x on the scrubbie above the tool and it disappeared. Does anyone know how to get it back?

    There are five 3D tools in PS CS5: Object, Camera, Mesh, Light, and Material, each of them with sub-tools such as Rotate, Roll etc.
    You can access them from the 3D panel (Window > 3D), and can watch/change their options in the PS Options bar.
    If you refer strictly to the 3D Axis widget, this tool allows on-canvas manipulation of the 3d object, camera, mesh or light, depending on what is your
    currently selected item in the 3D panel: Scene for Object and Camera tools, a mesh or a light for the Mesh and Light tools. With the 3D axis, you can
    rotate, roll, pan, slide, zoom directly on canvas.
    In order for the 3D axis widget to be activated, you need to be in GPU mode (check Preferences > Performance > Enable OpenGL Drawing).
    To show the 3D axis, go to View > Show > 3D Axis, or click on the grid icon at the bottom of the 3D panel (tooltip "Toggle misc 3D extras").

  • Why are MediaPlayer callbacks all Runnables rather than EventHandlers?

    Every other API in JavaFX with event processing callbacks implements EventTarget and allows EventHandlers to be registered to handle events.
    However the MediaPlayer does not implement EventTarget and callbacks for things which look like they should be events (e.g. onPlaying, onStopped, onPaused) are handled by registering a Runnable.
    Why is MediaPlayer different? Are there any extra considerations which need to be taken into account when programming the MediaPlayer?
    For instance, in code such as this (from forum post How can I solve the error "media corruption error"? =>
    mpLogo.setOnEndOfMedia(new Runnable() {
      public void run() {
        mpLogo.stop();
        mediaView.setMediaPlayer(mpSaludo);
        mpSaludo.play();
        root.getChildren().remove(grupo2);
    });Is the runnable always guaranteed to be run on the JavaFX Application thread? or should you wrap the code in a Platform.runLater call to ensure that the actions manipulating active scene graph objects taken on end of media only happen on the JavaFX Application thread?
    mpLogo.setOnEndOfMedia(new Runnable() {
      public void run() {
        Platform.runLater(new Runnable() {
          public void run() {
            mpLogo.stop();
            mediaView.setMediaPlayer(mpSaludo);
            mpSaludo.play();
            root.getChildren().remove(grupo2);
    });

    I don't know, I think this is an error. I know that there was one part of the media APIs that was called very frequently (the stuff related to histograms) that we didn't use events, but this most certainly should have been events. Dang. If I could find it in email history there must be something on it, but looking at it here I was both surprised and shocked that this one slipped through (since I don't know under what circumstance it would have made sense to use a Runnable here). In fact at first I thought maybe you were looking at some old code (before I knew it was you who posted).
    OK, suppose we all agree this was an error and we need to fix this. What to do? We can deprecate all these methods, but the new methods we'd want to supply would then have the wrong names. We could introduce a proper Event subclass for this and also a special EventHandler which also implements Runnable, just so it can be reused here. We'd then deprecate the methods and just change the hierarchy when we JSR the thing?
    I'm not sure how to recover, any other ideas?

  • Where to put removeChild (Away3d 4.x)

    Hey guys i need some help on how to change primitives and removing the previous primitive showing in the scene and also changing materials on the primitive with a click of a button.
    Mainly just where to put removeChild.
    This is for Away3d
    package
        import away3d.cameras.*;
        import away3d.containers.*;
        import away3d.controllers.*;
        import away3d.core.base.SubGeometry;
        import away3d.core.base.data.Vertex;
        import away3d.debug.*;
        import away3d.entities.Mesh;
        import away3d.extrusions.*;
        import away3d.filters.*;
        import away3d.lights.*;
        import away3d.materials.*;
        import away3d.materials.lightpickers.*;
        import away3d.materials.methods.*;
        import away3d.primitives.*;
        import away3d.textures.*;
        import away3dplus.controllers.SimpleHoverController;
        import flash.display.Bitmap;
        import flash.display.BitmapData;
        import flash.display.Sprite;
        import flash.display.StageAlign;
        import flash.display.StageScaleMode;
        import flash.events.Event;
        import flash.events.MouseEvent;
        import flash.geom.Vector3D;
        import flash.text.TextField;
        import flash.text.TextFieldAutoSize;
        import flash.text.TextFormat;
        [SWF(backgroundColor="#000000",frameRate="30",quality="LOW")]
        public class Main extends Sprite
        //engine variables
        private var view:View3D;
        private var scene:Scene3D;
        // debug
        private var awayStats:AwayStats;
        //light objects
        private var pointLight:PointLight;
        private var lightPicker:StaticLightPicker;
        //material objects
        private var redColorMaterial:ColorMaterial;
        private var skyBoxCubeTexture:BitmapCubeTexture;
        //Buttons   
        private var btnCube:Sprite = new Sprite
        private var btnSphere:Sprite = new Sprite
        private var btnCylinder:Sprite = new Sprite
        private var btnTorus:Sprite = new Sprite   
        private var btnMaterial:Sprite = new Sprite   
        private var btnWireframe:Sprite = new Sprite
            public function Main() {
                init();
                private function init():void {
                    initEngine();
                    initLights();
                    initCamera();
                    initMaterials();
                    initObjects();
                    initListeners();
                    drawButton()
                    btnCube.addEventListener(MouseEvent.CLICK, changeCube);
                    btnCube.x = 400;
                    btnCube.y = 25;
                    addChild(btnCube);
                    btnSphere.addEventListener(MouseEvent.CLICK, changeSphere);
                    btnSphere.x = 400;
                    btnSphere.y = 60;
                    addChild(btnSphere);
                    btnCylinder.addEventListener(MouseEvent.CLICK, changeCylinder);
                    btnCylinder.x = 400;
                    btnCylinder.y = 95;
                    addChild(btnCylinder);
                    btnTorus.addEventListener(MouseEvent.CLICK, changeTorus);
                    btnTorus.x = 400;
                    btnTorus.y = 130;
                    addChild(btnTorus);
                    //btnMaterial.addEventListener(MouseEvent.CLICK, changeMaterial);
                    btnMaterial.x = 15;
                    btnMaterial.y = 95;
                    addChild(btnMaterial);
                    btnWireframe.addEventListener(MouseEvent.CLICK, changeWireframe);
                    btnWireframe.x = 15;
                    btnWireframe.y = 130;
                    addChild(btnWireframe);
                 * Initialise the engine
                private function initEngine():void {
                    //stage setup
                    stage.scaleMode = StageScaleMode.NO_SCALE;
                    stage.align = StageAlign.TOP_LEFT;
                    // 3d view - window into 3d scene
                    view = new View3D();
                    addChild(view);
                    // 3d scene.
                    scene = view.scene;
                    // stats
                    awayStats = new AwayStats(view);
                    addChild(awayStats);
                 * Initialise the lights
                private function initLights():void {
                    //point light
                    pointLight = new PointLight();
                    scene.addChild(pointLight);
                    lightPicker = new StaticLightPicker([pointLight]);
                private function initCamera():void {
                    var hoverCameraManager:SimpleHoverController = new SimpleHoverController(view, 700, [pointLight]);
                 * Initialise Buttons
                private function drawButton():void {
                    var textLabel:TextField = new TextField()
                    btnCube.graphics.clear();
                    btnCube.graphics.beginFill(0xFFFFFF); // white
                    btnCube.graphics.drawRoundRect(0, 0, 80, 25, 10, 10); // x, y, width, height, ellipseW, ellipseH
                    textLabel.text = "CUBE";
                    textLabel.x = 22;
                    textLabel.y = 4;
                    textLabel.selectable = false;
                    btnCube.addChild(textLabel)
                var textLabel01:TextField = new TextField()   
                btnSphere.graphics.clear();
                btnSphere.graphics.beginFill(0xFFFFFF); // white
                btnSphere.graphics.drawRoundRect(0, 0, 80, 25, 10, 10); // x, y, width, height, ellipseW, ellipseH   
                textLabel01.text = "SPHERE";
                textLabel01.x = 18;
                textLabel01.y = 3;
                textLabel01.selectable = false;
                btnSphere.addChild(textLabel01)
                var textLabel03:TextField = new TextField()   
                btnCylinder.graphics.clear();
                btnCylinder.graphics.beginFill(0xFFFFFF); // white
                btnCylinder.graphics.drawRoundRect(0, 0, 80, 25, 10, 10); // x, y, width, height, ellipseW, ellipseH   
                textLabel03.text = "CYLINDER";
                textLabel03.x = 10;
                textLabel03.y = 3;
                textLabel03.selectable = false;
                btnCylinder.addChild(textLabel03)   
                var textLabel04:TextField = new TextField()   
                btnTorus.graphics.clear();
                btnTorus.graphics.beginFill(0xFFFFFF); // white
                btnTorus.graphics.drawRoundRect(0, 0, 80, 25, 10, 10); // x, y, width, height, ellipseW, ellipseH   
                textLabel04.text = "TORUS";
                textLabel04.x = 17;
                textLabel04.y = 3;
                textLabel04.selectable = false;
                btnTorus.addChild(textLabel04)   
                var textLabel05:TextField = new TextField()   
                btnMaterial.graphics.clear();
                btnMaterial.graphics.beginFill(0xFFFFFF); // white
                btnMaterial.graphics.drawRoundRect(0, 0, 80, 25, 10, 10); // x, y, width, height, ellipseW, ellipseH   
                textLabel05.text = "MATERIAL";
                textLabel05.x = 6;
                textLabel05.y = 3;
                textLabel05.selectable = false;
                btnMaterial.addChild(textLabel05)       
                var textLabel06:TextField = new TextField()   
                btnWireframe.graphics.clear();
                btnWireframe.graphics.beginFill(0xFFFFFF); // white
                btnWireframe.graphics.drawRoundRect(0, 0, 80, 25, 10, 10); // x, y, width, height, ellipseW, ellipseH   
                textLabel06.text = "WIREFRAME";
                textLabel06.x = 2;
                textLabel06.y = 3;
                textLabel06.selectable = false;
                btnWireframe.addChild(textLabel06)       
                 * Initialise the materials
                private function initMaterials():void {
                    // red color
                    redColorMaterial = new ColorMaterial(0xFF0000, 0.8);
                    redColorMaterial.lightPicker = lightPicker;
                    skyBoxCubeTexture = new BitmapCubeTexture(new EnvPosX().bitmapData, new EnvNegX().bitmapData, new EnvPosY().bitmapData, new EnvNegY().bitmapData, new EnvPosZ().bitmapData, new EnvNegZ().bitmapData);
                 * Initialise the scene objects
                private function initObjects():void {
                    var trident:Trident = new Trident(100);
                    trident.x = 0;
                    trident.y = 0;
                    scene.addChild(trident);
                    //Geometry - Geometry is a collection of SubGeometries, each of which contain the actual geometrical data such as vertices, normals, uvs, etc.
                        ////PrimitiveBase    - PrimitiveBase is an abstract base class for mesh primitives, which are prebuilt simple meshes.
                            //CubeGeometry     A Cube primitive mesh.
                            var newCubeGeometry:CubeGeometry = new CubeGeometry(200, 200, 200, 50, 50, 50, true);
                            //SphereGeometry - A UV Sphere primitive mesh.
                            var newSphereGeometry:SphereGeometry = new SphereGeometry(50, 16, 12, true);
                            //CapsuleGeometry     A UV Capsule primitive mesh.
                            var newCapsuleGeometry:CapsuleGeometry = new CapsuleGeometry(50, 100, 16, 12, true);
                            //ConeGeometry     A UV Cone primitive mesh.
                            //var newConeGeometry:ConeGeometry = new ConeGeometry(50, 100, 16, 1, true, true);
                            //CylinderGeometry     A UV Cylinder primitive mesh.
                            var newCylinderGeometry:CylinderGeometry = new CylinderGeometry(50, 50, 100, 16, 1, true, true);
                            //PlaneGeometry     A Plane primitive mesh.
                            var newPlaneGeometry:PlaneGeometry = new PlaneGeometry(100, 100, 1, 1, true);
                            //RegularPolygonGeometry     A UV RegularPolygon primitive mesh.
                            var newRegularPoligonGeometry:RegularPolygonGeometry = new RegularPolygonGeometry(100, 16, true);
                            //TorusGeometry     A UV Torus primitive mesh.
                            var newTorusGeomentry:TorusGeometry = new TorusGeometry(50, 50, 15, 8, true);
                    // Entity - The Entity class provides an abstract base class for all scene graph objects that are considered having a "presence" in the scene,
                    //            in the sense that it can be considered an actual object with a position and a size (even if infinite or idealised), rather than a grouping.
                        //Mesh - Mesh agregates instance of a Geometry, augmenting it with a presence in the scene graph, a material, and an animations tate.
                        //            It consists out of SubMeshes, which in turn correspond to SubGeometries. SubMeshes allow different parts of the geometry to be assigned different materials.
                        //var cube:Mesh = new Mesh(newCubeGeometry, redColorMaterial);
                        //cube.x = 100;
                        //cube.y = 100;   
                        //cube.z = 100;
                        //scene.addChild(cube);
                        //var sphere:Mesh = new Mesh(newSphereGeometry, redColorMaterial);
                        //sphere.x = -75;
                        //sphere.y = -150;
                        //scene.addChild(sphere);
                        //var capsule:Mesh = new Mesh(newCapsuleGeometry, redColorMaterial);
                        //capsule.x = -200;
                        //capsule.y = -150
                        //scene.addChild(capsule);
                        //var cone:Mesh = new Mesh(newConeGeometry, redColorMaterial);
                        //cone.x = -200;
                        //cone.y = 150;
                        //cone.showBounds = true;
                        //scene.addChild(cone);
                        //var cylinder:Mesh = new Mesh(newCylinderGeometry, redColorMaterial);
                        //cylinder.x = -75;
                        //cylinder.y = 150;
                        //scene.addChild(cylinder);
                        //var plane:Mesh = new Mesh(newPlaneGeometry, redColorMaterial);
                        //plane.x = -75;
                        //plane.y = 275;
                        //scene.addChild(plane);
                        //var poligon:Mesh = new Mesh(newRegularPoligonGeometry, redColorMaterial);
                        //poligon.x = -275;
                        //poligon.y = 275;
                        //scene.addChild(poligon);
                        //var torus:Mesh = new Mesh(newTorusGeomentry, redColorMaterial);
                        //torus.x = -275;           
                        //scene.addChild(torus);
                        //SkyBox     A SkyBox class is used to render a sky in the scene.
                        //var skyBox:SkyBox = new SkyBox(skyBoxCubeTexture);
                        //scene.addChild(skyBox);
                        // SegmentSet
                            //WireframeAxesGrid - Class WireframeAxesGrid generates a grid of lines on a given planeWireframeAxesGrid
                            //var wireFrameAxesGrid:WireframeAxesGrid = new WireframeAxesGrid(4, 400, 1);
                            //scene.addChild(wireFrameAxesGrid);
                            //WireframeGrid     Class WireframeGrid generates a grid of lines on a given planeWireframeGrid
                            //var wireframeGrid:WireframeGrid = new WireframeGrid(10, 100, 5, 0x0000FF);
                            //wireframeGrid.x = 75;
                            //wireframeGrid.y = 275;
                            //scene.addChild(wireframeGrid);
                            //WireframePrimitiveBase
                                //WireframeCube    - Class WireFrameGrid generates a grid of lines on a given planeWireFrameGrid
                                //var wireFrameCube:WireframeCube = new WireframeCube(100, 100, 100, 0x0000FF, 5);
                                //wireFrameCube.x = 75;
                                //scene.addChild(wireFrameCube);
                                //WireframeSphere - Class WireFrameGrid generates a grid of lines on a given planeWireFrameGrid
                                //var wireFrameSphere:WireframeSphere = new WireframeSphere(50, 16, 12, 0x0000FF, 5);
                                //wireFrameSphere.x = 75;
                                //wireFrameSphere.y = -150;
                                //scene.addChild(wireFrameSphere);
                                //WireframePlane
                                //var wireframePlane:WireframePlane = new WireframePlane(100, 100, 10, 10, 0x0000FF, 5);
                                //wireframePlane.x = 175;
                                //wireframePlane.y = 275;
                                //scene.addChild(wireframePlane);
                 * Initialise the listeners
                private function initListeners():void {
                    addEventListener(Event.ENTER_FRAME, onEnterFrame);
                 * render loop
                private function onEnterFrame(event:Event):void {
                    view.render();
                 * Intialise the buttons events
                private function changeCube(event:MouseEvent):void {
                    var newCubeGeometry:CubeGeometry = new CubeGeometry(200, 200, 200, 50, 50, 50, true);
                    var cube:Mesh = new Mesh(newCubeGeometry, redColorMaterial);
                    cube.x = 100;
                    cube.y = 100;   
                    cube.z = 100;
                    scene.addChild(cube);
                    private function changeSphere(event:MouseEvent):void {   
                         var newSphereGeometry:SphereGeometry = new SphereGeometry(50, 16, 12, true);
                         var sphere:Mesh = new Mesh(newSphereGeometry, redColorMaterial);
                         scene.addChild(sphere);
                    private function changeCylinder(event:MouseEvent):void {   
                        var newCylinderGeometry:CylinderGeometry = new CylinderGeometry(50, 50, 100, 16, 1, true, true);
                        var cylinder:Mesh = new Mesh(newCylinderGeometry, redColorMaterial);
                        scene.addChild(cylinder);
                    private function changeTorus(event:MouseEvent):void {   
                        var newTorusGeomentry:TorusGeometry = new TorusGeometry(50, 50, 15, 8, true);
                        var torus:Mesh = new Mesh(newTorusGeomentry, redColorMaterial);
                        scene.addChild(torus);
                    private function changeWireframe(event:MouseEvent):void {   
                        var wireFrameCube:WireframeCube = new WireframeCube(100, 100, 100, 0x0000FF, 5);
                        scene.addChild(wireFrameCube);
    Thanks, Matthew

    Fraudulent seller.
    I received an empty package.- - 
    Back to the drawing board.
    Thanks for your replies.
    eBay is going through their required steps.
    It will take a week or better to get my refund.
    Thanks
    Shopping for another "Mac Pro Late 2013" or I might settle for my "Mac Mini 2012 i7 16 Gig 256 SSD Intel 4000" refurb with warranty bought from Apple that I already have on hand.
    Thank You
    I don't know how this ended upon two threads.
    I'm pretty sure I'm going to go with my 2012 Mac Mini i7 16 gig 256 SSD and Lacie Little Big Thunderbolt 1 512 SSD
    That will be pretty punchy for me.
    I'll only have about $1,000 in the computer itself with a three year Apple Care Warranty.
    It should sell for $500 a year from now if I choose too.
    I think it's going to work great.
    I'm going to load it up with all of the software just like I was going to do on the Mac Pro.
    It's good for three computers in the future so no money lost on the software
    I'll probably just keep the Mini indefinitely for a backup even after I upgrade to the newer 2015 Mac Pro later next year.
    Thanks

  • Help with ymouse restriction

    Hi all this is beyond my skill so I am hoping you can help. I
    have a
    scrolling movie clip that scolls left or right depending on
    where your mouse
    moves on the ENTIRE stage. I want to confine it to only work
    when the mouse
    is over the scorlling clip. I am told I need "ymouse test
    restriction" in
    the enginehandler. This is the code for the first lines of
    the engine
    handler
    the MC sits on X of -10.9 and Y of 420 THANK YOU so much.
    function startEngine() {
    this.onEnterFrame = engineHandler;}
    function addObjects() { //add objects in the scene
    var objects = xmlObj.firstChild.childNodes;
    for(var i=0; i<objects.length; i++) {
    var link = objects
    .attributes.source; //the image link in the xml file
    if (useFixedImageSize==1) source1 = "imgMc"; //image mc
    linkage id from the
    library
    else source1 = "imgMc_01"; var sourceType1 = "library";
    var regName1 = "p"+i; //the registration name used in Flash
    this.attachMovie(source1,regName1,1000+i);
    var x1 = (this["p0"]._width/2 + xOffset) + (i *
    (this[regName1]._width +
    offset));
    var y1 = this["p0"]._height/2;
    this[regName1]._x = x1;
    this[regName1]._y = y1;
    //this[regName1]["imgBox"].loadMovie(link); //load external
    image
    if (useZoom) { //set some variables used in object zoom
    calculation
    this[regName1]["currZoom"] = 0;
    this[regName1]["info"] = objects;//keep the XML node
    info
    nodes
    = this[regName1]; //add object to nodes array
    //this[regName1].onPress = pressHandler;
    //this[regName1].onRelease = this[regName1].onReleaseOutside
    =
    releaseHandler;
    var nr = objects.length;
    var inst = "p"+nr;
    var pos = sc.getCoordinates(inst);
    totalDistance = (nr * (this["p0"]._width + offset)) -
    offset;
    //trace(totalDistance+" "+this["p0"]._width);

    use the attach code option to display code in this forum. and
    i don't seen any handlers, but you can use a hitTest() between your
    scrolling movieclip and the mouse to determine if you want to
    scroll.

  • Memory leak during copyPixels

    Hi,
    I am making a custom renderer using the copyPixels function for my
    Haxe/Flash game. So I have this kind of code :
    buffer.bitmapData.copyPixels(m_CurrentSkin, RECT3, POINT, null, null,
    true);
    where :
    -buffer is the bitmap where all my scene's objects are drawn
    -m_CurrentSkinis the BitmapData that contains the current frame of the
    object to be drawn
    Every time m_CurrentSkin contains a BitmapData that have never been
    drawn (the first time that an animation frame is drawn for example), I
    have a memory leak that is not garbage.
    However if m_CurrentSkin contains a BitmapData that have already been
    drawn (when the animation is played a second time for example), there
    isn't any memory leak.
    If I comment this line there is no leak so the problem comes from
    there.
    It seems that a copy of the BitmapData is cached in memory but I have
    checked in my code and there is no cacheAsBitmap explicitely set to
    true.
    Anyone have idea of what is happening?
    Thank you,
    Régis.

    How do you know it's leaking? As I copyPixels and watch the profile in FlashBuilder I see flash caching and it doesn't garbage collect until it feels it's necessary. If it continuously acceesses the same thing it's not behaving improper to continuously keep it in cache.
    That being said, if you press the manual garbage collection button and don't see it release within a few seconds, it might be a leak. The only way you'll really know is to isolate this, clear the bitmapdata objects and null them out while pressing garbage collection to see if flash properly disposes of the bitmapdata instances. Just make sure you're disposing of them properly.

  • Load/Unload FXML like plugins

    Hi, I'm a programmer coming from .NET, using technologies like WPF and DirectX among others... One of the reasons for leaving .NET is the mismanagement and inability to release usercontrols in a logical and easy way. Each of these usercontrols in the world. NET are .dll files that are instantiated via reflection and loaded into the main window as a plugin. Let's look at each of these plugins as a multimedia application with video, graphics, sound, or any other resources that can be loaded and later unloaded after serving its purpose.
    My question is, this is possible in JavaFX? I imagine a Stage that loads each of these plugins as FXML, release them and replace it with a new plugin when required. It's like media player that plays FXML's, instead of songs or movies.
    Again, I'm a Java newbie and my only reason to learn it is that if it works as I think, JavaFX will have no competitor.
    Thanks for your help,
    Roel Weapons

    JavaFX takes FXML file and runs in real time in the style of an interpreted language? I'd think of the FXMLLoader as more like a web browser loading HTML.
    In the HTML world, the browser will parse the HTML and then create a document object model based on the HTML.
    In the FXML world, the FXMLLoader will parse the HTML and create a JavaFX scenegraph object model based on the FXML.
    If the FXML features inline JavaScript scripts, then the execution model is pretty much like HTML with JavaScript. For a browser, the JavaScript is executed on a JavaScript VM such as Chrome V8. For FXML, the JavaScript will be executed by a JavaScript engine bundled with the Java System, e.g. a Rhino derivative (http://en.wikipedia.org/wiki/Rhino_%28JavaScript_engine%29) or nashorn (http://en.wikipedia.org/wiki/Nashorn_%28JavaScript_engine%29).
    If the FXML features a separate controller in Java code, then that Java code is pre-compiled to java byte code - which is an intermediate representation between source code and machine code. The java byte code is executed by a Java Virtual Machine at a speed that (in most cases) for all intents and purposes is comparable to machine code execution.
    For me, the ability to simply and easily choose and use from FXML both a scripting language and a compiled language from any of the many available languages executable on the JVM is one of the major technical advantages of JavaFX over HTML. For example you can write scripting and controller logic in Ruby if you liked: http://stackoverflow.com/questions/13831708/using-fxml-with-jruby.
    How I can do to load a FXML that haves a controller but both are in a different path to the application that invokes it?The FXMLLoader load method has a url paramater to specify the location of where the source FXML file originates - it works in the same way as entering a URL into your web browser's location bar.
    http://docs.oracle.com/javafx/2/api/javafx/fxml/FXMLLoader.html#FXMLLoader%28java.net.URL%29
    I understand that using FXMLLoader.load(getClass().getResource()), we are invoking a resource within the project prepackaged, or am I wrong? Pretty much correct. getClass().getResource() will use the originating codebase of the classloader, which will generally be the source jar for the application. But you don't have to load a resource like this, you can use any url you like (within the Java security sandbox which currently doesn't really apply to FXML anyway as FXML won't execute within any kind of security sandbox as of JavaFX 2.2).
    If so, what is the best practice to load drivers that are referenced FXML and what is the way to unload them?With FXML, you can define your own components and tags to extend the language; i.e. it does not have a fixed tagset. In addition to the extensive set of components provided by the JavaFX system, you can easily define your own custom components. Perhaps these are like your notion of drivers and plugins (which I have to admit is hard for me to understand)?
    http://docs.oracle.com/javafx/2/api/javafx/fxml/doc-files/introduction_to_fxml.html#custom_components
    So that covers what happens when you load FXML. With regard to unloading FXML, there is no such explicit thing. Essentially, like other memory management tasks in Java, it's automatically handled by the Java garbage collector. The JavaFX system automatically handles low level stuff like freeing up GPU texture memory for scene graph objects which are no longer required. Java and JavaFX are essentially higher level abstractions than writing in something like C code with OpenGL and the Java and JavaFX runtimes take care of many of the mundane tasks such as garbage collection and system resource cleanup for you.
    If a custom FXML component made use of some resource such as a database connection which you wanted to explicitly release when the component is no longer used, then you could add a listener to the component's scene property. When the component is no longer part of an active scene, the listener would be triggered and you could run some code there to free up your resources (e.g. release the database connection).
    For an example of a system which dynamically loads fxml files and lets the Java system garbage collect them when they are no longer needed, see the webfx project: https://github.com/brunoborges/webfx. WebFX also provides some interesting examples of fxml without controllers.

Maybe you are looking for