-
Notifications
You must be signed in to change notification settings - Fork 6
ImageJ_javaaddpath #20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
kouichi-c-nakamura
wants to merge
36
commits into
imagej:migrate-matlab-scripts
from
kouichi-c-nakamura:ImageJ_javaaddpath
Closed
ImageJ_javaaddpath #20
kouichi-c-nakamura
wants to merge
36
commits into
imagej:migrate-matlab-scripts
from
kouichi-c-nakamura:ImageJ_javaaddpath
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Sometimes, you only want to use parts of Fiji as a library, not start the interactive ImageJ. To do this, start 'Miji(false)'. By default, ImageJ will still be started (e.g. 'Miji' does the same as 'Miji(true)'). Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
While at it, almost rewrite the thing to avoid unnecessary cd'ing. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Jean-Yves Tinevez <jean-yves.tinevez@pasteur.fr>
Signed-off-by: Jean-Yves Tinevez <jeanyves.tinevez@gmail.com>
Signed-off-by: Jean-Yves Tinevez <jeanyves.tinevez@gmail.com>
Unfortunately, a restart is required if Java3D was not installed, but it is as convenient now as we could make it, at least. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
This file only contains comments, as it is meant to be published using Matlab's publish() function. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Jean-Yves Tinevez <jeanyves.tinevez@gmail.com>
Signed-off-by: Stephan Preibisch <stephan.preibisch@gmx.de>
We also have to ensure that the bin folder in the MATLAB jre path is writable, otherwise it will confuse the user. Reported by Peter Beemiller Signed-off-by: Jean-Yves Tinevez <jeanyves.tinevez@gmail.com>
Now that Johannes fixed the surface plot mode of the 3D viewer, we can put this demo back. It is a demo explainging how to get the MATLAB logo rendered in 3D in Fiji 3D viewer. Signed-off-by: Jean-Yves Tinevez <jean-yves.tinevez@pasteur.fr>
Apparently, the light was bluish, dunno whether we can do that, too :O) Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Jean-Yves Tinevez <jeanyves.tinevez@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
... also if the user asked the main window to be hidden... Noticed and reported by Walter de Back. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
In Miji.m, there it a call to fiji.User_Plugins.installScripts(); Unfortunately, this causes a nasty bug with MATLAB: calling this static method modifies the static MATLAB java path, which is normally forbidden. The consequences of that are nasty: adding a class to the dynamic class path can be refused, because it would be falsy recorded in the static path. On top of that, the static path is fsck in a weird way, with file separator from Unix, causing a mess on Windows platform. So we give it up as now. Signed-off-by: Jean-Yves Tinevez <jeanyves.tinevez@gmail.com>
In the same vein as the previous commit... Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Interoperability for the win. Signed-off-by: Jean-Yves Tinevez <jean-yves.tinevez@pasteur.fr>
…rrayImg Signed-off-by: Jean-Yves Tinevez <jean-yves.tinevez@pasteur.fr>
The Miji.m script adds Fiji.app/jars and Fiji.app/plugins to the MATLAB classpath by explicitly iterating over *.jar in these directories. Thus it was not recursing to subdirectories - notably /jars/bio-formats. The script will now recurse through subdirectories to find jars. Adapted from: http://stackoverflow.com/questions/2652630/ how-to-get-all-files-under-a-specific-directory-in-matlab
Instead of manually adding filesep let's let MATLAB decide how to make a full file path.
This proposed change removes a bug I described on imagej-dev . Any other use of javaaddpath, say to develop one's other software, loses the instance of MIJ. This is because javaaddpath automatically calls clear java. By returning the MIJ instance as a workspace object, the MIJ instance will not be cleared. The only change for the user is to call: MIJ = Miji; instead of just Miji; Signed-off by: Mark Hiner
This changes all relevant scripts from javax.vecmath to org.scijava.vecmath, since we now ship vecmath as a standard dependency!
Java 3D 1.6 now ships with Fiji. It does not need to be (and cannot be!) installed separately.
…pt spam of printing every artifact added to the classpath to the console. Related commit: 2633d12 - Remove `cd ..` to stay in the same directory while loading Miji - Only turn warnings off for: `MATLAB:javaclasspath:jarAlreadySpecified`
ImageJ.m src\scripts\update
Merged in 8d0d50d, closing now. |
Merged
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is only a suggestion.
ImageJ
has been split intoImageJ
andImageJ_javaaddpath
.ImageJ
callsImageJ_javaaddpath
to add java class paths.I have tested that the following code successfully launches ImageJ.
In addition, you can use
ImageJ_javaaddpath
to access ImageJ Java API from withinparfor
loop of parallel computing MATLAB toolbox.https://forum.image.sc/t/can-i-use-fiji-imagej-from-within-matlabs-parfor-loop-for-parallel-computing/19007/4?u=kouichi-c-nakamura
In addition, the following code successfully showed an image in ImageJ without ImageJ GUI. I wonder this can be effectively called 'headless' mode. If this disqualifies to be called headless, what else is needed?
IJM
, perhaps?Above is equivalent to the code below, actually, if this can be called as 'headless'.
In fact, if yes, we won't need
ImageJ_javaaddpath
to be a separate function. We can simply work withImageJ
andImageJ(false)
.