Difference between revisions of "Libpc"

From BRL-CAD
(Objectives)
(Structure)
 
Line 23: Line 23:
 
==Possible Approaches in BRL-CAD==
 
==Possible Approaches in BRL-CAD==
 
==Structure==
 
==Structure==
 +
 +
libpc is composed of the following modules
 +
 +
#Reprsentation of Parameters and Constraints in Storage
 +
#Representation of Parameters in Memory
 +
#Representation of Constraints in Memory / DataStructure
 +
## Associated MathGrammar and MathVM
 +
#Generation of 2 and 3 from 1
 +
#Solution System
 +
##Constraint Network Generation from 4
 +
##Constraint Satisfaction
 +
#Parameter and Geometry updation
 +
 
===Overall Hierarchy===
 
===Overall Hierarchy===
 
===Libpc Hierarchy===
 
===Libpc Hierarchy===
 
===Object Hierarchy===
 
===Object Hierarchy===
 +
 
==Use-case Scenarios==
 
==Use-case Scenarios==

Latest revision as of 07:34, 28 March 2009

Design icon.png This page contains the design document for an enhancement or feature. The design should be considered a work in progress and may not represent the final design. As this is a collaborative design, contributions and participation from other developers and users is encouraged. Use the discussion page for providing comments and suggestions.

libpc: Introduction[edit]

Objectives[edit]

The objectives encompassed by libpc are the following

  • Front-end
  1. An Abstraction of Parameters over the present components of primitives
  2. Representation of complex (see examples) constraints between Parameters
  3. Framework for selection of Design/Alternative Configurations
  • Back-end
  1. Fast Geometric Constraint Solution

Advantages[edit]

  1. Reduction of Modeling time in case of Iterative designs
  2. Logic of Design represented in the geometry file itself
  3. Capability for complex geometry generation

Constraint Satisfaction Process[edit]

Possible Approaches in BRL-CAD[edit]

Structure[edit]

libpc is composed of the following modules

  1. Reprsentation of Parameters and Constraints in Storage
  2. Representation of Parameters in Memory
  3. Representation of Constraints in Memory / DataStructure
    1. Associated MathGrammar and MathVM
  4. Generation of 2 and 3 from 1
  5. Solution System
    1. Constraint Network Generation from 4
    2. Constraint Satisfaction
  6. Parameter and Geometry updation

Overall Hierarchy[edit]

Libpc Hierarchy[edit]

Object Hierarchy[edit]

Use-case Scenarios[edit]