Perspective3D_api
Documentation Perspective3D
Fonctions membres publiques | Fonctions membres publiques statiques | Liste de tous les membres
Référence de la classe Perspective3D::Perspectiveabstract

Classe principale Perspective3D pour la conversion de plan 2D vers la 3D. Plus de détails...

#include <perspective_api.h>

Graphe de collaboration de Perspective3D::Perspective:
Collaboration graph

Fonctions membres publiques

virtual ~Perspective ()=0
 
virtual bool LicenceActive () const =0
 
virtual bool AttendInit () const =0
 Bloque l'appelant en attendant l'initialisation de la bibliothèque. Le bloquage ne se fera que pendant 5 secondes maximum. Si l'initialisation prend trop de temps en raison d'un blocage, la fonction renverra false. Plus de détails...
 
virtual bool FinInit () const =0
 
virtual void ReInit (PScene3D *scene=nullptr)=0
 (Re)initialise la bibliothèque pour générer un nouveau modèle sur la même instance de Perspective3D. Plus de détails...
 
virtual void ReInit (const ParametresPerspective &parametres, PScene3D *scene=nullptr)=0
 (Re)initialise la bibliothèque pour générer un nouveau modèle sur la même instance de Perspective3D, mais avec assignation de nouveaux paramètres Plus de détails...
 
virtual const ParametresPerspectiveParametres () const =0
 Renvoi les paramètres de cette instance Perspective3D. Plus de détails...
 
virtual pint AjoutEntitesVue (const Prect2D &rect_vue, const vues2D_t vue, const PScene2D &scene)=0
 Ajoute les entités de la scène 2D englobées par le cadre de vue. Plus de détails...
 
virtual void AjoutPoint2D (const Ppoint2D &p, vues2D_t vue)=0
 Ajoute un point 2D. Plus de détails...
 
virtual void AjoutLigne2D (const Pligne2D &l, vues2D_t vue)=0
 Ajoute une ligne 2D. Plus de détails...
 
virtual void AjoutLigne2D (pfloat x1, pfloat y1, pfloat x2, pfloat y2, vues2D_t vue, bool cache=false, bool point=false, const PCouleur &couleur=PCouleur())=0
 Ajoute une ligne 2D d'après ses coordonnées et ses propriétées. Plus de détails...
 
virtual void AjoutEllipse2D (const Pellipse2D &e, vues2D_t vue)=0
 Ajoute une ellipse 2D. Plus de détails...
 
virtual void AjoutEllipse2D (pfloat x, pfloat y, pfloat longueur, pfloat hauteur, pfloat angledebut, pfloat anglefin, pfloat angle_rotation, vues2D_t vue, bool cache=false, const PCouleur &couleur=PCouleur())=0
 Ajoute une ellipse 2D d'après ses coordonnées et ses propriétés. Plus de détails...
 
virtual void defOrigineFace (const Ppoint2D &p)=0
 Assigne l'origine de la vue de face (optionnel, si non défini, elle sera cherchée automatiquement au point inférieur en X et en Y des entitées de la vue de face). Plus de détails...
 
virtual void defOrigineCote (const Ppoint2D &p)=0
 Assigne l'origine de la vue de côté (optionnel, si non défini, elle sera cherchée automatiquement au point inférieur en X et en Y des entitées de la vue de côté). Plus de détails...
 
virtual void defOrigineHaut (const Ppoint2D &p)=0
 Assigne l'origine de la vue de dessus (optionnel, si non défini, elle sera cherchée automatiquement au point inférieur en X et en Y des entitées de la vue de dessus). Plus de détails...
 
virtual bool defOrigineVue (const Ppoint2D &p, vues2D_t vue)=0
 Assigne l'origine de la vue donnée en argument. Plus de détails...
 
virtual bool Generation3D (modeperspective_t mode=modeperspective_t::PMODE_3VUES, pfloat param1=0.)=0
 Génère le solide 3D en fonction de mode de fonctionnement. Bien entendu il faut avant avoir complété la/les vue(s) avec les fonctions Ajout***2D. Plus de détails...
 
virtual resultat_gen3d_t ResultatGeneration () const =0
 Renvoi l'identifiant du résultat de la génération (voir l'enum resultat_gen3d_t). Plus de détails...
 
virtual bool FinGeneration () const =0
 Renvoi true si la génération s'est achevée (quelqu'en soit le résultat). Plus de détails...
 
virtual bool GenPatron (bool ignore_non_developpable=true)=0
 Genère un patron de l'ensemble des segments du modèle. Plus de détails...
 
virtual PScene3DScene () const =0
 Scène contenant le solide. Plus de détails...
 
virtual PScene3DScenePtr () const =0
 Scène contenant le solide. Plus de détails...
 
virtual const PScene3DSceneConst () const =0
 Scène contenant le solide. Plus de détails...
 
virtual const PScene3DSceneConstPtr () const =0
 Scène contenant le solide. Plus de détails...
 
virtual void RegenProjections (vues2D_t projs, infos3d_t infos, pint tailletxt_pct)=0
 Re-génère le modèle des projections avec de nouveaux paramètres. Plus de détails...
 
virtual void RegenProjections ()=0
 Re-génère le modèle des projections sans toucher aux paramètres. Plus de détails...
 
virtual bool ModelePret () const =0
 
virtual puint Avancement () const =0
 (A appeler régulièrement pendant la génération afin de contrôler l'avancement). Plus de détails...
 
virtual void Stop ()=0
 Arrête (brutalement mais proprement) la génération du modèle. Plus de détails...
 
virtual bool ContinueGeneration () const =0
 (Peut être appelé régulièrement pendant la génération afin de contrôler le status). Plus de détails...
 
virtual const PjournalJournalConst () const =0
 Journal de génération. Plus de détails...
 
virtual void AssigneTolerances (pfloat &t1, pfloat &t2, pfloat &t3, pfloat &v, pfloat &a) const =0
 AssigneTolerances Assigne les valeurs de tolérance utilisés pour la génération du solide. Plus de détails...
 

Fonctions membres publiques statiques

static PerspectiveConstruct (const ParametresPerspective &parametres, PScene3D *scene=nullptr)
 Initialise la bibliothèque (tous les paramètres ont une valeur par défaut) Plus de détails...
 
static bool ValideLicence (const pint8 *cle_crypt, puint64 sel)
 Valide une clé de licence (chiffrée avec ChiffrementLicence()). La clé doit faire 24 octets de long. Plus de détails...
 

Description détaillée

Classe principale Perspective3D pour la conversion de plan 2D vers la 3D.

Documentation des constructeurs et destructeur

◆ ~Perspective()

virtual Perspective3D::Perspective::~Perspective ( )
pure virtual

Documentation des fonctions membres

◆ AjoutEllipse2D() [1/2]

virtual void Perspective3D::Perspective::AjoutEllipse2D ( const Pellipse2D e,
vues2D_t  vue 
)
pure virtual

Ajoute une ellipse 2D.

Paramètres
el'ellipse à ajouter
vuela vue concernée

◆ AjoutEllipse2D() [2/2]

virtual void Perspective3D::Perspective::AjoutEllipse2D ( pfloat  x,
pfloat  y,
pfloat  longueur,
pfloat  hauteur,
pfloat  angledebut,
pfloat  anglefin,
pfloat  angle_rotation,
vues2D_t  vue,
bool  cache = false,
const PCouleur couleur = PCouleur() 
)
pure virtual

Ajoute une ellipse 2D d'après ses coordonnées et ses propriétés.

◆ AjoutEntitesVue()

virtual pint Perspective3D::Perspective::AjoutEntitesVue ( const Prect2D rect_vue,
const vues2D_t  vue,
const PScene2D scene 
)
pure virtual

Ajoute les entités de la scène 2D englobées par le cadre de vue.

Renvoie
Renvoi le nombre d'entités ajoutées.

◆ AjoutLigne2D() [1/2]

virtual void Perspective3D::Perspective::AjoutLigne2D ( const Pligne2D l,
vues2D_t  vue 
)
pure virtual

Ajoute une ligne 2D.

Paramètres
lla ligne à ajouter
vuela vue concernée

◆ AjoutLigne2D() [2/2]

virtual void Perspective3D::Perspective::AjoutLigne2D ( pfloat  x1,
pfloat  y1,
pfloat  x2,
pfloat  y2,
vues2D_t  vue,
bool  cache = false,
bool  point = false,
const PCouleur couleur = PCouleur() 
)
pure virtual

Ajoute une ligne 2D d'après ses coordonnées et ses propriétées.

◆ AjoutPoint2D()

virtual void Perspective3D::Perspective::AjoutPoint2D ( const Ppoint2D p,
vues2D_t  vue 
)
pure virtual

Ajoute un point 2D.

Paramètres
ple point à ajouter
vuela vue concernée

◆ AssigneTolerances()

virtual void Perspective3D::Perspective::AssigneTolerances ( pfloat t1,
pfloat t2,
pfloat t3,
pfloat v,
pfloat a 
) const
pure virtual

AssigneTolerances Assigne les valeurs de tolérance utilisés pour la génération du solide.

◆ AttendInit()

virtual bool Perspective3D::Perspective::AttendInit ( ) const
pure virtual

Bloque l'appelant en attendant l'initialisation de la bibliothèque. Le bloquage ne se fera que pendant 5 secondes maximum. Si l'initialisation prend trop de temps en raison d'un blocage, la fonction renverra false.

◆ Avancement()

virtual puint Perspective3D::Perspective::Avancement ( ) const
pure virtual

(A appeler régulièrement pendant la génération afin de contrôler l'avancement).

Renvoie
L'état d'avancement en pourcents.

◆ Construct()

static Perspective* Perspective3D::Perspective::Construct ( const ParametresPerspective parametres,
PScene3D scene = nullptr 
)
static

Initialise la bibliothèque (tous les paramètres ont une valeur par défaut)

Paramètres
parametresLes paramètres de génération.
sceneSi un pointeur vers une scène est donnée en argument, Perspective3D l'utilisera pour y placer le résultat de la génération. Sinon la scène sera allouée et libérée par Perspective.

◆ ContinueGeneration()

virtual bool Perspective3D::Perspective::ContinueGeneration ( ) const
pure virtual

(Peut être appelé régulièrement pendant la génération afin de contrôler le status).

Renvoie
true si la génération est en cours, sinon false.

◆ defOrigineCote()

virtual void Perspective3D::Perspective::defOrigineCote ( const Ppoint2D p)
pure virtual

Assigne l'origine de la vue de côté (optionnel, si non défini, elle sera cherchée automatiquement au point inférieur en X et en Y des entitées de la vue de côté).

◆ defOrigineFace()

virtual void Perspective3D::Perspective::defOrigineFace ( const Ppoint2D p)
pure virtual

Assigne l'origine de la vue de face (optionnel, si non défini, elle sera cherchée automatiquement au point inférieur en X et en Y des entitées de la vue de face).

◆ defOrigineHaut()

virtual void Perspective3D::Perspective::defOrigineHaut ( const Ppoint2D p)
pure virtual

Assigne l'origine de la vue de dessus (optionnel, si non défini, elle sera cherchée automatiquement au point inférieur en X et en Y des entitées de la vue de dessus).

◆ defOrigineVue()

virtual bool Perspective3D::Perspective::defOrigineVue ( const Ppoint2D p,
vues2D_t  vue 
)
pure virtual

Assigne l'origine de la vue donnée en argument.

◆ FinGeneration()

virtual bool Perspective3D::Perspective::FinGeneration ( ) const
pure virtual

Renvoi true si la génération s'est achevée (quelqu'en soit le résultat).

Renvoie

◆ FinInit()

virtual bool Perspective3D::Perspective::FinInit ( ) const
pure virtual
Renvoie
true si l'initialisation de la bibliothèque est terminée, sinon false.

◆ Generation3D()

virtual bool Perspective3D::Perspective::Generation3D ( modeperspective_t  mode = modeperspective_t::PMODE_3VUES,
pfloat  param1 = 0. 
)
pure virtual

Génère le solide 3D en fonction de mode de fonctionnement. Bien entendu il faut avant avoir complété la/les vue(s) avec les fonctions Ajout***2D.

Paramètres
modeLe mode de fonctionnement. Voir l'enum modeperspective_t.
param1Le paramètre de hauteur d'extrusion pour le mode Extrusion, ou l'angle pour le mode révolution. Ignoré avec le mode 3 vues.
Renvoie
true si tout s'est bien passé, sinon false.

◆ GenPatron()

virtual bool Perspective3D::Perspective::GenPatron ( bool  ignore_non_developpable = true)
pure virtual

Genère un patron de l'ensemble des segments du modèle.

Paramètres
ignore_non_developpableDéfini si l'on ignore les segments développables car entrant en collision avec ses voisins.
Renvoie
true si tout s'est bien passé, sinon false.

◆ JournalConst()

virtual const Pjournal& Perspective3D::Perspective::JournalConst ( ) const
pure virtual

Journal de génération.

Renvoie
Renvoi le journal (en vue de l'afficher).

◆ LicenceActive()

virtual bool Perspective3D::Perspective::LicenceActive ( ) const
pure virtual
Renvoie
true si la bibliothèque la licence est active via la clé d'activation donnée à l'initialisation. Sinon false.

◆ ModelePret()

virtual bool Perspective3D::Perspective::ModelePret ( ) const
pure virtual
Renvoie
true si le modèle a été correctement généré et prêt à l'affichage. Sinon false.

◆ Parametres()

virtual const ParametresPerspective& Perspective3D::Perspective::Parametres ( ) const
pure virtual

Renvoi les paramètres de cette instance Perspective3D.

◆ RegenProjections() [1/2]

virtual void Perspective3D::Perspective::RegenProjections ( vues2D_t  projs,
infos3d_t  infos,
pint  tailletxt_pct 
)
pure virtual

Re-génère le modèle des projections avec de nouveaux paramètres.

Paramètres
projsles vues à projeter.
infosLes informations à afficher.
tailletxt_pctTaille du texte 3D en pourcentage de la taille de la scène.

◆ RegenProjections() [2/2]

virtual void Perspective3D::Perspective::RegenProjections ( )
pure virtual

Re-génère le modèle des projections sans toucher aux paramètres.

◆ ReInit() [1/2]

virtual void Perspective3D::Perspective::ReInit ( PScene3D scene = nullptr)
pure virtual

(Re)initialise la bibliothèque pour générer un nouveau modèle sur la même instance de Perspective3D.

◆ ReInit() [2/2]

virtual void Perspective3D::Perspective::ReInit ( const ParametresPerspective parametres,
PScene3D scene = nullptr 
)
pure virtual

(Re)initialise la bibliothèque pour générer un nouveau modèle sur la même instance de Perspective3D, mais avec assignation de nouveaux paramètres

◆ ResultatGeneration()

virtual resultat_gen3d_t Perspective3D::Perspective::ResultatGeneration ( ) const
pure virtual

Renvoi l'identifiant du résultat de la génération (voir l'enum resultat_gen3d_t).

◆ Scene()

virtual PScene3D& Perspective3D::Perspective::Scene ( ) const
pure virtual

Scène contenant le solide.

Renvoie
La scène.

◆ SceneConst()

virtual const PScene3D& Perspective3D::Perspective::SceneConst ( ) const
pure virtual

Scène contenant le solide.

Renvoie
La scène (const).

◆ SceneConstPtr()

virtual const PScene3D* Perspective3D::Perspective::SceneConstPtr ( ) const
pure virtual

Scène contenant le solide.

Renvoie
La scène (const *).

◆ ScenePtr()

virtual PScene3D* Perspective3D::Perspective::ScenePtr ( ) const
pure virtual

Scène contenant le solide.

Renvoie
La scène (*).

◆ Stop()

virtual void Perspective3D::Perspective::Stop ( )
pure virtual

Arrête (brutalement mais proprement) la génération du modèle.

◆ ValideLicence()

static bool Perspective3D::Perspective::ValideLicence ( const pint8 cle_crypt,
puint64  sel 
)
static

Valide une clé de licence (chiffrée avec ChiffrementLicence()). La clé doit faire 24 octets de long.


La documentation de cette classe a été générée à partir du fichier suivant :