Noesis Forum : Visilog Software Forum Index Noesis Forum : Visilog Software
Image processing forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Appel de fonctions Visilog sous Amira Quantification

 
Post new topic   Reply to topic    Noesis Forum : Visilog Software Forum Index -> Avizo, XQuant module
View previous topic :: View next topic  
Author Message
Yves Collenot



Joined: 01 Feb 2006
Posts: 3
Location: Montpellier

PostPosted: Wed May 17, 2006 1:14 pm    Post subject: Appel de fonctions Visilog sous Amira Quantification Reply with quote

Bonjour,

Nous avons acheté le developer pack d'Amira qui nous permet d'écrire nos propres DLLs.
Existe-t-il un moyen d'appeler les fonctions compilées de Visilog depuis ces DLLs ?

ex. effectuer un hole_fill Visilog sur une image binaire produite sous Amira puis manipuler le résultat dans notre code Amira.

Si non, quelle autre solution avons-nous ?
Y-a-t-il du code exemple qui illustrerait la méthode ?

Merci par avance,
Bonne journée,

Yves.
Back to top
View user's profile Send private message Visit poster's website
Noesis
Administrateur - Site Admin


Joined: 30 Jan 2006
Posts: 169
Location: Gif Sur Yvette - Crolles

PostPosted: Wed May 17, 2006 1:38 pm    Post subject: Plusieurs possibilités Reply with quote

Les appels aux fonctions Visilog doivent être fait à partir du code interprété. C'est à dire en TCL dans des objets scripts (Script object)

Il existe toutefois plusieurs façons de contourner cette limitation.

Pour accéder directement aux fonctions IP, il faut directement appeler la librairie IpPro51.dll à la façon d'un plugin C de Visilog SDK.
A l'aide de l'API windows GetProcAddress on peut récupérer le pointeur vers la fonction désirée.
(ce qui nécessite de passer des nf en argument)
Tout ceci sous condition qu'un module Visilog soit déjà chargé dans Amira
Les fonctions Ip sont documentées dans le fichier Proguide.pdf


L'autre solution est d'attaquer directement la librairie C++ AccessVisilib.dll qui exporte aussi les fonctions IP mais en utilisant les nom d'image (c'est une couche au dessus de Ippro51)

Enfin il est aussi possible de lancer directement des commandes. Il suffit de récupérer l'API VisilogExecuteCmd de AmiraVisilog.dll et lui passer en argument la chaine de caractères identique à celle utilisée en TCL

Par exemple :
Code:
VisilogExecuteCmd("cmd=closing input=ImaObj param=3 output=ImaMask");


Voila qui devrait permettre de faire pas mal de choses
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Mercury



Joined: 18 May 2006
Posts: 1
Location: Bordeaux

PostPosted: Thu May 18, 2006 11:08 am    Post subject: Appel vers l'interpreteur à partir du C++ Reply with quote

Bonjour

En complément, il est effectivement possible d'appeler l'interpreteur à partir des DLL d'Amira dev à l'aide du module HxInterpreter

Le module HxInterpreter fournit des méthodes d'évaluation de commandes TCL (telles que eval, evalf).
Code:
theInterpreter->eval(command_string,...)

Cette ligne permet d'éxecuter la commande TCL définie en 1er paramètre.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Noesis Forum : Visilog Software Forum Index -> Avizo, XQuant module All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group