0024336: Content of OCCT documentation should be updated. Iter 2
Minor corrections in documentation (dev guides) Finalized brep_wp guide (by DLN); entirely removed non-PNG images to provide smooth PDF generation; Restored cross-guide links in Technical overview; small improvements and editing in GIT guide. Resized some images to better fit on PDF pages.
@ -33,14 +33,13 @@ user_guides/ocaf_wp/ocaf_wp.md
|
||||
user_guides/voxels_wp/voxels_wp.md
|
||||
|
||||
dev_guides/dev_guides.md
|
||||
dev_guides/contribution/coding_rules.md
|
||||
dev_guides/cdl/cdl.md
|
||||
dev_guides/tests/tests.md
|
||||
dev_guides/documentation/documentation.md
|
||||
dev_guides/wok/wok.md
|
||||
dev_guides/contribution/coding_rules.md
|
||||
dev_guides/contribution_workflow/contribution_workflow.md
|
||||
dev_guides/git_guide/git_guide.md
|
||||
|
||||
dev_guides/tests/tests.md
|
||||
dev_guides/cdl/cdl.md
|
||||
dev_guides/wok/wok.md
|
||||
|
||||
dev_guides/building/building.md
|
||||
dev_guides/building/3rdparty/3rdparty_windows.md
|
||||
|
@ -1,4 +1,4 @@
|
||||
Contribution Workflow {#dev_guides_contribution_workflow}
|
||||
Contribution Workflow {#dev_guides__contribution_workflow}
|
||||
====================================
|
||||
@tableofcontents
|
||||
|
||||
@ -143,8 +143,8 @@ The definition of the following attributes is obligatory:
|
||||
This is done to have the master branch history plain and clean.
|
||||
The following picture illustrates the process:
|
||||
|
||||
@image html OCCT_ContributionWorkflow_V3_image002.jpg "Integration of several branches"
|
||||
@image latex OCCT_ContributionWorkflow_V3_image002.jpg "Integration of several branches"
|
||||
@image html OCCT_ContributionWorkflow_V3_image002.png "Integration of several branches"
|
||||
@image latex OCCT_ContributionWorkflow_V3_image002.png "Integration of several branches"
|
||||
|
||||
The new master branch is tested against possible regressions that might appear due to interference between separate changes. When the tests are Ok, the new master is pushed to the official repository
|
||||
and the original branches are removed from it.
|
||||
|
Before Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 89 KiB |
@ -6,9 +6,9 @@ The following documents provide information on OCCT building, development and te
|
||||
* @subpage dev_guides__building "Building OCCT from sources"
|
||||
* @subpage dev_guides__documentation "Documentation system"
|
||||
* @subpage dev_guides__coding_rules "Coding Rules"
|
||||
* Contribution Workflow
|
||||
* Guide to installing and using Git for OCCT development
|
||||
@subpage dev_guides__tests "Automatic Testing system"
|
||||
* @subpage dev_guides__contribution_workflow "Contribution Workflow"
|
||||
* @subpage dev_guides__git_guide "Guide to installing and using Git for OCCT development"
|
||||
* @subpage dev_guides__tests "Automatic Testing system"
|
||||
|
||||
Two other documents provide details on obsolete technologies used by OCCT,
|
||||
to be removed in future releases:
|
||||
|
@ -460,7 +460,7 @@ Equations can be written by several ways:
|
||||
These formulas should be put between \@f\[ and \@f\] tags. An example:
|
||||
|
||||
@verbatim
|
||||
@f$[
|
||||
@f[
|
||||
|I_2|=\left| \int_{0}^T \psi(t)
|
||||
\left\{
|
||||
u(a,t)-
|
||||
@ -469,7 +469,7 @@ These formulas should be put between \@f\[ and \@f\] tags. An example:
|
||||
\int_{a}^\theta c(\xi)u_t(\xi,t)\,d\xi
|
||||
\right\} dt
|
||||
\right|
|
||||
@f$]
|
||||
@f]
|
||||
@endverbatim
|
||||
|
||||
gives the following result:
|
||||
|
@ -1,4 +1,4 @@
|
||||
Guide to installing and using Git for OCCT development {#dev_guides_git_guide}
|
||||
Guide to installing and using Git for OCCT development {#dev_guides__git_guide}
|
||||
=================================
|
||||
|
||||
@tableofcontents
|
||||
@ -28,11 +28,11 @@ Guide to installing and using Git for OCCT development {#dev_guides_git_guide}
|
||||
|
||||
URL of the official OCCT source code Git repository (accessed by SSH protocol) is:
|
||||
|
||||
gitolite@git.dev.opencascade.org:occt
|
||||
gitolite@git.dev.opencascade.org:occt
|
||||
|
||||
or
|
||||
|
||||
ssh://gitolite@git.opencascade.org/occt.git
|
||||
ssh://gitolite@dev.opencascade.org/occt.git
|
||||
|
||||
@subsection occt_gitguide_1_3 Content
|
||||
|
||||
@ -136,10 +136,12 @@ The official repository contains:
|
||||
|
||||
* Complete the installation.
|
||||
|
||||
TortoiseGit integrates to Windows Explorer, thus it is possible to use context menu in Windows Explorer to access its functionality:
|
||||
|
||||
@image html OCCT_GitGuide_V2_image005.png
|
||||
@image latex OCCT_GitGuide_V2_image005.png
|
||||
|
||||
TortoiseGit integrates to Windows Explorer, thus it is possible to use popup menu in Windows Explorer to access its functionality:
|
||||
|
||||
|
||||
Note that if you have installed MSysGit or have Git installed in non-default path,
|
||||
on the first time you use TortoiseGit you may get the message demanding to define path to Git.
|
||||
@ -247,18 +249,17 @@ The official repository contains:
|
||||
|
||||
@subsection occt_gitguide_3_3 Adding public key in your account
|
||||
|
||||
Log in on the portal http://dev.opencascade.org and click on 'My account' link to the right.
|
||||
If you have a Contributor status, you will see 'SSH keys' tab to the right.
|
||||
Click on that tab, then click 'Add a public key', and paste the text of the public key
|
||||
(see above sections on how to generate the key) into the text box.
|
||||
Click "Save" to input the key to the system.
|
||||
Log in on the portal http://dev.opencascade.org and click on **My account** link to the right. If you have a Contributor status, you will see **SSH keys** tab to the right.
|
||||
Click on that tab, then click **Add a public key**, and paste the text of the public key (see above sections on how to generate the key) into the text box.
|
||||
Click **Save** to input the key to the system.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image008.png
|
||||
@image latex OCCT_GitGuide_V2_image008.png
|
||||
|
||||
Note that a user can have several SSH keys.
|
||||
You can distinguish between these keys by the Title field ID; by default it is taken from SSH key comment.
|
||||
It is typical to use your e-mail address or workstation name for this field; no restrictions are set by the portal.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image008.png
|
||||
@image latex OCCT_GitGuide_V2_image008.png
|
||||
|
||||
|
||||
Please note that some time (5-10 min) is needed for the system
|
||||
to update the configuration after the new key is added.
|
||||
@ -308,19 +309,14 @@ The official repository contains:
|
||||
|
||||
where <i><path></i> is the path to the new folder which will be created for the repository.
|
||||
|
||||
* In TortoiseGit: right-click in the Explorer window, then choose "Git Clone":
|
||||
* In TortoiseGit: create a new folder, open it and right-click in the Explorer window, then choose **Git Clone** in the context menu:
|
||||
|
||||
@image html OCCT_GitGuide_V2_image009.png
|
||||
@image latex OCCT_GitGuide_V2_image009.png
|
||||
|
||||
If you have chosen Putty as SSH client during TortoiseGit installation, check the “Load Putty Key” option and specify the location of the private key file saved by PuttyGen (see 3.2.1). This shall be done for the first time only.
|
||||
If you have chosen Putty as SSH client during TortoiseGit installation, check the **Load Putty Key** option and specify the location of the private key file saved by PuttyGen (see 3.2.1). This shall be done for the first time only.
|
||||
|
||||
Note that on the first connection to the repository server you may be requested to enter a password for your private SSH key; further you can get a message that the authenticity of the host cannot be established and will be asked if you want to continue connecting or not:
|
||||
|
||||
@image html OCCT_GitGuide_V2_image010.png
|
||||
@image latex OCCT_GitGuide_V2_image010.png
|
||||
|
||||
Choose “Yes” to continue. Then the host’s key will be stored in $HOME/.ssh/known_hosts file.
|
||||
Note that on the first connection to the repository server you may be requested to enter a password for your private SSH key; further you can get a message that the authenticity of the host cannot be established and will be asked if you want to continue connecting or not. Choose **Yes** to continue. The host’s key will be stored in <i>$HOME/.ssh/known_hosts</i> file.
|
||||
|
||||
@subsection occt_gitguide_4_3 Branch creation
|
||||
|
||||
@ -338,17 +334,17 @@ In the console:
|
||||
|
||||
In TortoiseGit:
|
||||
* Go to the local copy of the repository.
|
||||
* Right-click in the Explorer window, then choose "Git Create Branch".
|
||||
* Right-click in the Explorer window, then choose **Git Create Branch**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image011.png
|
||||
@image latex OCCT_GitGuide_V2_image011.png
|
||||
|
||||
* Select “Base On” Branch remotes/origin/master
|
||||
* Select **Base On** Branch *remotes/origin/master*.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image012.png
|
||||
@image latex OCCT_GitGuide_V2_image012.png
|
||||
|
||||
Check option ‘Switch to new branch’ if you are going to start working with the newly created branch immediately.
|
||||
Check option **Switch to new branch** if you are going to start working with the newly created branch immediately.
|
||||
|
||||
@subsection occt_gitguide_4_4 Branch switching
|
||||
|
||||
@ -359,14 +355,14 @@ In TortoiseGit:
|
||||
> git checkout CR12345
|
||||
~~~~~
|
||||
|
||||
In TortoiseGit: right-click, TortoiseGit -> Checkout/switch
|
||||
In TortoiseGit: right-click in the explorer window and select in the context menu **TortoiseGit** -> **Switch/Checkout**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image013.png
|
||||
@image latex OCCT_GitGuide_V2_image013.png
|
||||
|
||||
Note that in order to work with the branch locally you need to set option
|
||||
“Create new branch” when you checkout the branch from the remote repository for the first time.
|
||||
Option “Track” stores association between the local branch and the original branch in a remote repository.
|
||||
**Create new branch** when you checkout the branch from the remote repository for the first time.
|
||||
Option **Track** stores association between the local branch and the original branch in a remote repository.
|
||||
|
||||
@subsection occt_gitguide_4_5 Committing branch changes
|
||||
|
||||
@ -394,7 +390,7 @@ In TortoiseGit:
|
||||
> git add file1.hxx file2.cxx
|
||||
~~~~~
|
||||
|
||||
* In TortoiseGit: right-click, choose “Git Commit -> CR…”:
|
||||
* In TortoiseGit: right-click in the explorer window and select in the context menu <b>Git Commit -> CR…</b>:
|
||||
|
||||
@image html OCCT_GitGuide_V2_image014.png
|
||||
@image latex OCCT_GitGuide_V2_image014.png
|
||||
@ -413,147 +409,109 @@ In TortoiseGit:
|
||||
> git push "origin" CR12345:CR12345
|
||||
~~~~~
|
||||
|
||||
* In TortoiseGit: right-click, TortoiseGit -> Push
|
||||
* In TortoiseGit: right-click in the explorer window and select in the context menu, TortoiseGit -> **Push**
|
||||
|
||||
@image html OCCT_GitGuide_V2_image015.png
|
||||
@image latex OCCT_GitGuide_V2_image015.png
|
||||
|
||||
Note that Git will forbid pushing a branch if the corresponding remote branch already exists and has some changes, which are not in the history of your local branch. This may happen in different situations:
|
||||
* You have amended the last commit which is already in the remote repository.
|
||||
If you are sure that nobody else uses your branch, push again with ‘force’ option.
|
||||
* You have rebased your branch, so that now it is completely different
|
||||
from the branch in the remote repository. In this case, push it under a different name (add a suffix):
|
||||
Note that Git forbids pushing a branch if the corresponding remote branch already exists and has some changes, which are not in the history of your local branch. This may happen in different situations:
|
||||
* You have amended the last commit which is already in the remote repository. If you are sure that nobody else uses your branch, push again with **Force** option.
|
||||
* You have rebased your branch, so that now it is completely different from the branch in the remote repository. In this case, push it under a different name (add a suffix):
|
||||
|
||||
@image html OCCT_GitGuide_V2_image016.png
|
||||
@image latex OCCT_GitGuide_V2_image016.png
|
||||
|
||||
Then remove the original remote branch so that other people recognize that it has been replaced by the new one. For that, select TortoiseGit -> Push again, then select an empty line for your local branch name,
|
||||
and enter the name of the branch to be removed in ‘Remote’ field:
|
||||
Then remove the original remote branch so that other people recognize that it has been replaced by the new one. For that, select TortoiseGit -> **Push** again, select an empty line for your local branch name,
|
||||
and enter the name of the branch to be removed in **Remote** field:
|
||||
|
||||
@image html OCCT_GitGuide_V2_image017.png
|
||||
@image latex OCCT_GitGuide_V2_image017.png
|
||||
|
||||
* The other developer has committed some changes in the remote branch.
|
||||
In this case, pull changes from the remote repository to have them merged
|
||||
with your version, and push your branch after it is successfully merged.
|
||||
* The other developer has committed some changes in the remote branch. In this case, **Pull** changes from the remote repository to have them merged with your version, and push your branch after it is successfully merged.
|
||||
|
||||
@subsection occt_gitguide_4_7 Synchronizing with remote repository
|
||||
|
||||
Maintain your repository synchronized with the remote one and clean unnecessary stuff regularly.
|
||||
Use Git command fetch with option prune to get update of all branches
|
||||
from the remote repository and to clean your local repository from the remote branches that have been deleted.
|
||||
|
||||
Use Git command *fetch* with option *prune* to get the update of all branches from the remote repository and to clean your local repository from the remote branches that have been deleted.
|
||||
|
||||
* In the console:
|
||||
|
||||
~~~~~
|
||||
> git fetch --prune
|
||||
~~~~~
|
||||
|
||||
* In TortoiseGit:
|
||||
* In TortoiseGit: right-click in the explorer window and select in the context menu **TortoiseGit** -> **Fetch**. Check in **Prune** check-box.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image018.png
|
||||
@image latex OCCT_GitGuide_V2_image018.png
|
||||
|
||||
If some changes have been made to the branch you are working with in the remote repository,
|
||||
use Git command pull to get the remote changes and merge them with your local branch.
|
||||
If the branch you are working with has been changed in the remote repository, use Git command *pull* to get the remote changes and merge them with your local branch.
|
||||
|
||||
This operation is required in particular to update your local master branch when the remote master changes.
|
||||
|
||||
* In console:
|
||||
~~~~~
|
||||
> git pull
|
||||
~~~~~
|
||||
* In TortoiseGit:
|
||||
|
||||
* In TortoiseGit: right-click in the explorer window and select in the context menu **TortoiseGit** -> **Pull**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image019.png
|
||||
@image latex OCCT_GitGuide_V2_image019.png
|
||||
|
||||
Note that the local branches of your repository are the primary place
|
||||
where your changes are stored until they get integrated to the official version
|
||||
of OCCT (master branch). The branches submitted to official repository
|
||||
are for collaborative work, review, and integration;
|
||||
that repository should not be used for long-term storage of incomplete changes.
|
||||
Note that the local branches of your repository are the primary place, where your changes are stored until they get integrated to the official version of OCCT (master branch). The branches submitted to official repository are for collaborative work, review, and integration - that repository should not be used for long-term storage of incomplete changes.
|
||||
|
||||
Remove the local branches that you do not need any more. Note that you cannot delete the current branch, thus you need to switch to another one (e.g. master) if the branch you are going to delete is the current one.
|
||||
Remove the local branches that you do not need any more. Note that you cannot delete the current branch. It means that you need to switch to another one (e.g. master) if the branch you are going to delete is the current one.
|
||||
|
||||
* In the console:
|
||||
~~~~~
|
||||
> git branch -d CR12345
|
||||
~~~~~
|
||||
|
||||
* In TortoiseGit: right-click, select TortoiseGit -> Show log
|
||||
* In TortoiseGit: right-click in the explorer window and select in the context menu **TortoiseGit** -> **Git Show Log**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image020.png
|
||||
@image latex OCCT_GitGuide_V2_image020.png
|
||||
|
||||
Select “All branches” to view all branches.
|
||||
Right-click on the branch you want to delete and select Delete… menu item corresponding to this branch.
|
||||
Select **All branches** check-box to view all branches.
|
||||
Right-click on the branch you want to delete and select **Delete** item in the context menu.
|
||||
|
||||
Note that the log view in TortoiseGit is a convenient tool
|
||||
to visualize and manage branches; it provides short-cuts to many functions described above.
|
||||
Note that many functions described above can be accessed from the Log View, which is a very convenient tool to visualize and manage branches.
|
||||
|
||||
@subsection occt_gitguide_4_8 Applying a fix made on older version of OCCT
|
||||
|
||||
If you have a fix made on a previous version of OCCT,
|
||||
perform the following sequence of operations to prepare it
|
||||
for testing and integration to the current development version.
|
||||
|
||||
* Identify the version of OCCT on which the fix has been made.
|
||||
In most cases, this will be an OCCT release, e.g. OCCT 6.7.0.;
|
||||
then just find a tag or a commit corresponding to this version in the Git history log of the master branch.
|
||||
If you have a fix made on a previous version of OCCT, perform the following sequence of operations to prepare it for testing and integration to the current development version:
|
||||
* Identify the version of OCCT on which the fix has been made. In most cases, this will be an OCCT release, e.g. OCCT 6.7.0.
|
||||
* Find a tag or a commit corresponding to this version in the Git history log of the master branch.
|
||||
* Create a branch basing on this tag or commit. In TortoiseGit history log: right-click on the base commit, then select **Create branch at this version**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image021.png
|
||||
@image latex OCCT_GitGuide_V2_image021.png
|
||||
|
||||
Check option **Switch to the new branch** to start working within the new branch immediately, or switch to it separately afterwards.
|
||||
|
||||
* Check option **Switch to the new branch** to start working within the new branch immediately, or switch to it separately afterwards.
|
||||
* Put your fix in the working copy, build and check that it works, then commit to the branch.
|
||||
* Rebase the branch on the current master.
|
||||
|
||||
In TortoiseGit: right-click on the working directory,
|
||||
then choose TortoiseGit->Rebase; then select *remotes/origin/master* as UpStream revision, and click **Start**:
|
||||
* Rebase the branch on the current master. In TortoiseGit: right-click on the working directory, choose **TortoiseGit** -> **Rebase**, select *remotes/origin/master* as UpStream revision, and click **Start**:
|
||||
|
||||
@image html OCCT_GitGuide_V2_image022.png
|
||||
@image latex OCCT_GitGuide_V2_image022.png
|
||||
|
||||
Note that you can get some conflicts during rebase.
|
||||
To resolve the conflicts double-click on each conflicted file
|
||||
(highlighted by red in the file list) to open visual merge tool.
|
||||
Switch between conflicting fragments by red arrows, and for each one
|
||||
decide if the code of one or both conflicting versions is to be taken.
|
||||
Use the toolbar.
|
||||
Note that you can get some conflicts during rebase. To resolve them, double-click on each conflicted file (highlighted by red in the file list) to open visual merge tool. Switch between conflicting fragments by red arrows, and for each one decide if the code of one or both conflicting versions is to be taken.
|
||||
|
||||
@subsection occt_gitguide_4_9 Rebasing with history clean-up
|
||||
|
||||
At some moments you might need to rebase your branch on the latest version of the master.
|
||||
At some moments you might need to rebase your branch on the latest version of the master.
|
||||
|
||||
We recommend rebasing before the first submission of the branch
|
||||
for review or when the master has diverged substantially from your branch.
|
||||
We recommend rebasing before the first submission of the branch for review or when the master has diverged substantially from your branch.
|
||||
|
||||
Rebasing is a good occasion to clean-up the history of commits in the branch.
|
||||
Consider collapsing (squashing, in terms of Git) the history of your branch
|
||||
into a single commit unless you deem that having separate commits is important
|
||||
for your future work with the branch or its code reviewing.
|
||||
Git also allows you to change the order of commits, edit commit contents and messages, etc.
|
||||
|
||||
Here is the sequence of actions to rebase your branch into a single commit:
|
||||
Rebasing is a good occasion to clean-up the history of commits in the branch. Consider collapsing (squashing, in terms of Git) the history of your branch into a single commit unless you deem that having separate commits is important for your future work with the branch or its code reviewing. Git also allows changing the order of commits, edit commit contents and messages, etc.
|
||||
|
||||
To rebase your branch into a single commit, you need to do the following:
|
||||
* Switch to your branch (e.g. “CR12345”)
|
||||
* In TortoiseGit history log, select a branch to rebase on (usually remotes/origin/master)
|
||||
and in the context menu choose **Rebase “CR12345” onto this**.
|
||||
* In the Rebase dialog, check **Squash All**.
|
||||
|
||||
* In TortoiseGit history log, select a branch to rebase on *(remotes/origin/master)* and in the context menu choose **Rebase “CR12345” onto this**.
|
||||
* In the **Rebase** dialog, check **Squash All**. You can also change the order of commits and define for each commit whether it should be kept (**Pick**), edited, or just skipped.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image023.png
|
||||
@image latex OCCT_GitGuide_V2_image023.png
|
||||
|
||||
**Note** that you can also change the order of commits and define for each commit
|
||||
whether it should be kept (“pick”), edited, or just skipped.
|
||||
|
||||
* Click **Start**.
|
||||
* The process will stop if a conflict is detected.
|
||||
In such case, find files with status ‘Conflicted’ in the list (marked by red),
|
||||
and double-click on them to resolve the conflict.
|
||||
When all conflicts are resolved, click ‘Continue’.
|
||||
* The process will stop if a conflict is detected. In that case, find files with status **Conflicted** in the list (marked by red), and double-click on them to resolve the conflict. When all conflicts are resolved, click **Continue**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image024.png
|
||||
@image latex OCCT_GitGuide_V2_image024.png
|
||||
@ -570,32 +528,22 @@ Remove the local branches that you do not need any more. Note that you cannot de
|
||||
The changes made in the branch can be reviewed without direct access to Git, using GitWeb interface:
|
||||
|
||||
* Open GitWeb in your web browser: http://git.dev.opencascade.org/gitweb/?p=occt.git
|
||||
* Locate the branch you want to review among heads (click ‘…’ at the bottom of the page to see the full list).
|
||||
* Click log (or shortlog) to see the history of the branch.
|
||||
* Locate the branch you want to review among **heads** (click ‘…’ at the bottom of the page to see the full list).
|
||||
* Click **log** (or **shortlog**) to see the history of the branch.
|
||||
|
||||
**Note** that the branch can contain more than one commit, and you need to distinguish commits
|
||||
that belong to that branch (those to be reviewed) from the commits
|
||||
corresponding to the previous state of the master branch.
|
||||
Normally the first commit in the list that starts from the ID
|
||||
of the other issue indicates the branching point;
|
||||
commits above it are the ones to be reviewed.
|
||||
**Note** that the branch can contain more than one commit, and you need to distinguish commits that belong to that branch (those to be reviewed) from the commits corresponding to the previous state of the master branch. Normally the first commit in the list that starts from the ID of the other issue indicates the branching point; commits above it are the ones to be reviewed.
|
||||
|
||||
* Click *commitdiff* on each log entry to review the changes (highlighted with color format).
|
||||
* Click **commitdiff** on each log entry to review the changes (highlighted with color format).
|
||||
|
||||
@subsection occt_gitguide_5_2 Review branch changes with TortoiseGit
|
||||
|
||||
Use of TortoiseGit is recommended for convenient code review:
|
||||
|
||||
* Fetch the changes from the remote repository as described in 4.7;
|
||||
* Right-click on the repository, choose TortoiseGit -> Show log;
|
||||
* Fetch the changes from the remote repository as described in <a href="#occt_gitguide_4_7">Synchronizing with remote repository</a> section.
|
||||
* Right-click on the repository, choose **TortoiseGit** -> **Show** log;
|
||||
* Locate the remote branch you need to review;
|
||||
* To review commits one-by-one, select each commit in the log.
|
||||
The list of changed files is shown at the bottom of the window;
|
||||
double-click on the file will open visual compare tool.
|
||||
* To review all changes made in the branch at once, or to compare
|
||||
two arbitrary revisions, select the corresponding commits in the log
|
||||
(e.g. the last commit in the branch and the branching point),
|
||||
right-click for the context menu, and choose **Compare revisions**.
|
||||
* To review commits one-by-one, select each commit in the log. The list of changed files is shown at the bottom of the window; double-click on the file will open visual compare tool.
|
||||
* To review all changes made in the branch at once, or to compare two arbitrary revisions, select the corresponding commits in the log (e.g. the last commit in the branch and the branching point), ight-click for the context menu, and choose **Compare revisions**.
|
||||
|
||||
@image html OCCT_GitGuide_V2_image026.png
|
||||
@image latex OCCT_GitGuide_V2_image026.png
|
||||
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 7.6 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 6.6 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 7.2 KiB |
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 7.2 KiB |
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 55 KiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 95 KiB |
@ -6,7 +6,7 @@
|
||||
|
||||
# get OCCT version from file Standard_Version.hxx (if available)
|
||||
proc OverviewDoc_DetectCasVersion {theCasRoot} {
|
||||
set occt_ver 16.7.0
|
||||
set occt_ver 6.7.0
|
||||
set occt_ver_add ""
|
||||
if { [file exist $theCasRoot/src/Standard/Standard_Version.hxx] } {
|
||||
set fh [open $theCasRoot/src/Standard/Standard_Version.hxx]
|
||||
|
@ -438,8 +438,7 @@ Declaration of available plug-ins is done through special resource file(s).
|
||||
The pload command loads the plug-in in accordance with
|
||||
the specified resource file and activates the commands implemented in the plug-in.
|
||||
|
||||
The whole process of using the plug-in mechanism as well as the instructions for extending Test Harness is described in the
|
||||
@ref user_guides__test_harness.
|
||||
The whole process of using the plug-in mechanism as well as the instructions for extending Test Harness is described in the @ref user_guides__test_harness.
|
||||
|
||||
Draw Test Harness provides an environment for OCCT automated testing system.
|
||||
Please, consult its @ref dev_guides__tests "Automated Testing System" for details.
|
||||
@ -562,11 +561,9 @@ The combination of these resources allows creating substantial applications.
|
||||
Voxel
|
||||
------
|
||||
|
||||
This is a demonstration application showing OCCT voxel models.
|
||||
It also includes a set of non-regression tests and other commands
|
||||
for testing this functionality (accessible only through TEST pre-processor definition).
|
||||
This is a demonstration application showing OCCT voxel models. It also includes a set of non-regression tests and other commands for testing this functionality (accessible only through TEST pre-processor definition).
|
||||
|
||||
**See also:** Voxels User's guide (under construction)
|
||||
**See also:** <a href="occt_voxels_wp.html">Voxels User's guide</a>
|
||||
|
||||
**Remarks:**
|
||||
|
||||
@ -575,8 +572,7 @@ for testing this functionality (accessible only through TEST pre-processor defin
|
||||
|
||||
@subsubsection OCCT_OVW_SECTION_7_3_3 C#
|
||||
|
||||
C# sample demonstrates integration of OCCT 3D Viewer and Import / Export functionality
|
||||
into .NET applications (using Windows Forms and WPF front ends).
|
||||
C# sample demonstrates integration of OCCT 3D Viewer and Import / Export functionality into .NET applications (using Windows Forms and WPF front ends).
|
||||
|
||||
@image html /overview/images/overview_c__ie.png
|
||||
@image latex /overview/images/overview_c__ie.png
|
||||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 89 KiB |
@ -75,9 +75,9 @@ These services are organized into the following libraries:
|
||||
* Math Utilities
|
||||
* Basic Persistence
|
||||
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to Foundation Classes User's guide
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to <a href="user_guides__foundation_classes.html">Foundation Classes User's guide</a>
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_2_1 Kernel Classes
|
||||
|
||||
@ -346,13 +346,12 @@ These services are organized into the following libraries:
|
||||
* Geometry Utilities
|
||||
* Topology
|
||||
|
||||
The technical overview provides only a basic description of the libraries. Please,
|
||||
refer for more details to Modeling Data User's guide
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to <a href="user_guides__modeling_data.html">Modeling Data User's guide</a>
|
||||
|
||||
3D geometric models are stored in OCCT native BREP format. It is possible to learn
|
||||
more about it in BREP Format Description White Paper
|
||||
more about it in <a href="occt_brep_format.html">BREP Format Description White Paper</a>
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_3_1 2D Geometry Types
|
||||
|
||||
@ -952,10 +951,9 @@ These services are organized into the following libraries:
|
||||
@image html /technical_overview/images/technical_overview_ma.png
|
||||
@image latex /technical_overview/images/technical_overview_ma.png
|
||||
|
||||
The technical overview provides only a basic description of the libraries.
|
||||
Please, refer for more details to Modeling Algorithms User's guide
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to <a href="user_guides__modeling_algos.html">Modeling Algorithms User's guide</a>
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_4_1 Geometric Tools
|
||||
|
||||
@ -1177,10 +1175,10 @@ to deformation. Then, the algorithm is called to calculate the final surface. It
|
||||
looks for a solution satisfying constraints and minimizing energy input.
|
||||
|
||||
@image html /technical_overview/images/technical_overview_occ_0007.png "Surface generated from four curves and a point"
|
||||
@image latex /technical_overview/images/technical_overview_occ_0007.png "Surface generated from four curves and a point"
|
||||
@image latex /technical_overview/images/technical_overview_occ_0007.png "Surface generated from four curves and a point"
|
||||
|
||||
@image html /technical_overview/images/technical_overview_occ_0008.png "Surface generated from two curves and a point"
|
||||
@image latex /technical_overview/images/technical_overview_occ_0008.png "Surface generated from two curves and a point"
|
||||
@image latex /technical_overview/images/technical_overview_occ_0008.png "Surface generated from two curves and a point"
|
||||
|
||||
#### Extension of a 3D curve or surface beyond its original bounds
|
||||
|
||||
@ -1395,9 +1393,9 @@ It has several sub-domains, each with its own scope of functionality:
|
||||
* customization - modifying shape representation to fit specific needs (the shape is not modified, only the form of its representation is modified);
|
||||
* processing - mechanism of shape modification via a user-editable resource file.
|
||||
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to Shape Healing User's guide
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to <a href="user_guides__shape_healing.html">Shape Healing User's guide</a>
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_4_8 Miscellaneous modelling algorithms.
|
||||
@ -1496,13 +1494,13 @@ Visualization in Open CASCADE Technology is based on the separation of modeling
|
||||
|
||||
For visualizing data structures, OCCT provides ready-to-use algorithms, which create graphic presentations from geometric models. These data structures may be used with the viewers supplied, and can be customized to take the specificity of your application into account.
|
||||
|
||||
Displaying is managed through presentation services, and selection in its turn is managed through selection services. With these services, data structures and algorithms are provided to display objects of an application, and to support graphical selection of these objects.
|
||||
Display is managed through presentation services, and selection in its turn is managed through selection services. With these services, data structures and algorithms are provided to display objects of an application and to support graphical selection of these objects.
|
||||
|
||||
Application Interactive Services (AIS) are provided to manage displaying, detection and selection of graphical presentations. These services associate data structures and interactive objects.
|
||||
|
||||
Please, refer for more details to Visualization User's guide
|
||||
The technical overview provides only a basic description of the libraries. Please, refer for more details to <a href="user_guides__visualization.html">Visualization User's guide</a>
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@image html /technical_overview/images/technical_overview_viz.png
|
||||
@image latex /technical_overview/images/technical_overview_viz.png
|
||||
@ -1914,7 +1912,8 @@ with fast access to the data and optimal allocation of data in memory.
|
||||
Also, a special visualization toolkit allows visualizing voxels
|
||||
as colored or black/white points and cubes, displaying only the voxels visible from the user's point of view.
|
||||
|
||||
Please, see for more information Voxels User's Guide white paper.
|
||||
Please, see for more information <a href="occt_voxels_wp.html">Voxels User's Guide</a>.
|
||||
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_5_11 Examples
|
||||
|
||||
@ -2119,9 +2118,10 @@ of the loading operation, you use the following enumerations from the <i> IFSele
|
||||
To read and write attributes such as names, colors, layers for IGES and STEP
|
||||
and validation properties and structure of assemblies for STEP, you can use an XDE document.
|
||||
|
||||
It is possible to learn more about XDE documents from XDE User's guide
|
||||
It is possible to learn more about XDE documents from <a href="user_guides__xde.html">XDE User's guide</a>.
|
||||
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_6_2 IGES
|
||||
@ -2144,27 +2144,21 @@ Please, note:
|
||||
* an IGES entity is an entity in the IGES normal sense.
|
||||
* a root entity is the highest level entity of any given type, e.g. type 144 for surfaces and type 186 for solids. Roots are not referenced by other entities.
|
||||
|
||||
It is possible to learn more about the IGES interface from IGES User's guide
|
||||
It is possible to learn more about the IGES interface from <a href="user_guides__iges.html">IGES User's guide</a>.
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_6_3 STEP
|
||||
|
||||
The STEP interface reads STEP files produced in accordance with STEP Application Protocol 214
|
||||
(Conformance Class 2 both CD and DIS versions of schema) and translates them
|
||||
to Open CASCADE Technology models. STEP Application Protocol 203 is also supported.
|
||||
The STEP interface reads STEP files produced in accordance with STEP Application Protocol 214 (Conformance Class 2 both CD and DIS versions of schema) and translates them to Open CASCADE Technology models. STEP Application Protocol 203 is also supported.
|
||||
|
||||
The STEP interface also translates OCCT models to STEP files. STEP files that are produced
|
||||
by this interface conform to STEP AP 203 or AP 214 (
|
||||
Conformance Class 2, either CD or DIS version of the schema) depending on the user's option.
|
||||
The STEP interface also translates OCCT models to STEP files. STEP files that are produced by this interface conform to STEP AP 203 or AP 214 (Conformance Class 2, either CD or DIS version of the schema) depending on the user's option.
|
||||
|
||||
Basic interface reads and writes geometrical, topological STEP data and assembly structures.
|
||||
|
||||
The interface is able to translate one entity, a group of entities or a whole file.
|
||||
|
||||
Other kinds of data such as colors, validation properties, layers, names
|
||||
and the structure of assemblies can be read or written
|
||||
with the help of XDE tools - <i> STEPCAFControl_Reader</i> and <i> STEPCAFControl_Writer</i>.
|
||||
Other kinds of data such as colors, validation properties, layers, names and the structure of assemblies can be read or written with the help of XDE tools - <i> STEPCAFControl_Reader</i> and <i> STEPCAFControl_Writer</i>.
|
||||
|
||||
To choose a translation mode when exporting to a STEP format, use <i> STEPControl_STEPModelType</i>.
|
||||
|
||||
@ -2175,8 +2169,9 @@ Please, note:
|
||||
* all references to shapes indicate OCCT shapes unless otherwise explicitly stated;
|
||||
* a root entity is the highest level entity of any given type, i.e. an entity that is not referenced by any other one.
|
||||
|
||||
It is possible to learn more about the STEP interface from STEP User's guide
|
||||
See also: our web site at E-learning and Training.
|
||||
It is possible to learn more about the STEP interface from <a href="user_guides__step.html">STEP User's guide</a>.
|
||||
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_6_4 STL
|
||||
|
||||
@ -2228,12 +2223,12 @@ in the same way as a number is the value of the Integer attribute and a string i
|
||||
|
||||
OCAF documents are in their turn managed by an OCAF application.
|
||||
|
||||
Please, refer for more details to OCAF User's guide and the OCAF white papers:
|
||||
* Application Framework
|
||||
* Distribution of Data through OCAF Tree
|
||||
* Application Framework Function Mechanism
|
||||
Please, refer for more details to <a href="user_guides__ocaf.html">OCAF User's guide</a> and the OCAF white papers:
|
||||
* <a href="ocaf_wp.html">Application Framework</a>
|
||||
* <a href="occt_ocaf_tree_wp.html">Distribution of Data through OCAF Tree</a>
|
||||
* <a href="occt_ocaf_functionmechanism_wp.html">Application Framework Function Mechanism</a>
|
||||
|
||||
See also: our web site at E-learning and Training.
|
||||
See also: our web site at <a href="http://www.opencascade.org/support/training/">E-learning and Training</a>.
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_7_1 How to start working with OCAF
|
||||
|
||||
@ -2380,23 +2375,11 @@ label depending on necessity:
|
||||
<i> TNaming_NamedShape </i> may contain a few pairs of hooks with the same evolution. In this
|
||||
case topology shape, which belongs to the named shape, is a compound of new shapes.
|
||||
|
||||
The data model contains both the topology and the hooks, and functions handle both
|
||||
topological entities and hooks. Consider the case of a box function, which creates
|
||||
a solid with six faces and six hooks. Each hook is attached to a face. If you want,
|
||||
you can also have this function create hooks for edges and vertices as well as for
|
||||
faces.
|
||||
The data model contains both the topology and the hooks, and functions handle both topological entities and hooks. Consider the case of a box function, which creates a solid with six faces and six hooks. Each hook is attached to a face. If you want, you can also have this function create hooks for edges and vertices as well as for faces.
|
||||
|
||||
Not all functions can define explicit hooks for all topological entities they create,
|
||||
but all topological entities can be turned into hooks when necessary. This is where
|
||||
topological naming is necessary.
|
||||
Not all functions can define explicit hooks for all topological entities they create, but all topological entities can be turned into hooks when necessary. This is where topological naming is necessary.
|
||||
|
||||
Consider the following example. A box defines six hooks for the six faces, but a
|
||||
protrusion created on a face of the box can only define two hooks, one for the top
|
||||
face, and one for all the lateral faces. As the basic wire defining the protrusion
|
||||
may change in the future the protrusion function cannot designate the lateral faces
|
||||
without ambiguity, their number may change. Figure 6 illustrates this example, faces
|
||||
F1 to F6 of the box each have a hook. Faces F7 to F10, the lateral faces of the protrusion,
|
||||
share a single hook, and face F11, the top face, has one hook.
|
||||
Consider the following example. A box defines six hooks for the six faces, but a protrusion created on a face of the box can only define two hooks, one for the top face, and one for all the lateral faces. As the basic wire defining the protrusion may change in the future the protrusion function cannot designate the lateral faces without ambiguity, their number may change. Figure 6 illustrates this example, faces F1 to F6 of the box each have a hook. Faces F7 to F10, the lateral faces of the protrusion, share a single hook, and face F11, the top face, has one hook.
|
||||
|
||||
@image html /technical_overview/images/technical_overview_occ_0068.png
|
||||
@image latex /technical_overview/images/technical_overview_occ_0068.png
|
||||
@ -2434,10 +2417,8 @@ attribute you are looking for. For this, find this information using the method
|
||||
### Function Attributes
|
||||
|
||||
|
||||
A model consists of data and algorithms manipulating with data. OCAF attributes store
|
||||
data. A Function attribute stores data corresponding to a Function (see the white
|
||||
paper OCAF Function Mechanism User's Guide). This mechanism manipulates with algorithms
|
||||
computing the model in the optimal way following the modifications.
|
||||
A model consists of data and algorithms manipulating with data. OCAF attributes store data. A Function attribute stores data corresponding to a Function (see the white paper <a href="occt_ocaf_functionmechanism_wp.html"> Application Framework Function Mechanism </a>). This mechanism manipulates with algorithms computing the model in the optimal way following the modifications.
|
||||
|
||||
|
||||
@subsection OCCT_TOVW_SECTION_7_3 Persistent Data Storage
|
||||
|
||||
@ -2525,9 +2506,7 @@ The standard procedure for an application in writing a container is as follows:
|
||||
|
||||
@subsubsection OCCT_TOVW_SECTION_7_3_2 Persistent Collections
|
||||
|
||||
Persistent collections are classes which handle dynamically sized collections of
|
||||
data that can be stored in the database. These collections provide three categories
|
||||
of service:
|
||||
Persistent collections are classes which handle dynamically sized collections of data that can be stored in the database. These collections provide three categories of service:
|
||||
|
||||
* persistent strings,
|
||||
* generic arrays of data,
|
||||
@ -2536,47 +2515,26 @@ of service:
|
||||
Persistent strings are concrete classes that handle sequences of characters based
|
||||
on both ASCII (normal 8-bit) and Unicode (16-bit) character sets.
|
||||
|
||||
Arrays are generic classes, that is, they can hold a variety of objects not necessarily
|
||||
inheriting from a unique root class. These arrays can be instantiated with any kind
|
||||
of storable or persistent object, and then inserted into the persistent data model
|
||||
of a user application.
|
||||
Arrays are generic classes, that is, they can hold a variety of objects not necessarily inheriting from a unique root class. These arrays can be instantiated with any kind of storable or persistent object, and then inserted into the persistent data model of a user application.
|
||||
|
||||
The purpose of these data collections is simply to convert transient data into its
|
||||
persistent equivalent so that it can be stored in the database. To this end, the
|
||||
collections are used to create the persistent data model and assure the link with
|
||||
the database. They do not provide editing or query capabilities because it is more
|
||||
efficient, within the operative data model of the application, to work with transient
|
||||
data structures (from the <i> TCollection</i> package).
|
||||
The purpose of these data collections is simply to convert transient data into its persistent equivalent so that it can be stored in the database. To this end, the collections are used to create the persistent data model and assure the link with the database. They do not provide editing or query capabilities because it is more efficient, within the operative data model of the application, to work with transient data structures (from the <i> TCollection</i> package).
|
||||
|
||||
For this reason:
|
||||
|
||||
* the persistent strings only provide constructors and functions to convert between transient and persistent strings, and
|
||||
* the persistent data collections are limited to arrays. In other words, <i> PCollection</i> does not include sequences, lists, queues, sets, stacks and so on (unlike <i> TCollection</i>).
|
||||
|
||||
Persistent string and array classes are found in the <i> PCollection</i> package.
|
||||
In addition, <i> PColStd</i> package provides standard,
|
||||
and frequently used, instantiations of persistent arrays, for very simple objects.
|
||||
Persistent string and array classes are found in the <i> PCollection</i> package. In addition, <i> PColStd</i> package provides standard, and frequently used, instantiations of persistent arrays, for very simple objects.
|
||||
|
||||
@subsubsection OCCT_TOVW_SECTION_7_3_3 Persistent Geometry
|
||||
|
||||
The Persistent Geometry component describes geometric data structures which can be
|
||||
stored in the database. These packages provide a way to convert data from the transient
|
||||
"world" to the persistent "world".
|
||||
The Persistent Geometry component describes geometric data structures which can be stored in the database. These packages provide a way to convert data from the transient "world" to the persistent "world".
|
||||
|
||||
Persistent Geometry consists of a set of atomic data models parallel to the geometric
|
||||
data structures described in the geometry packages. Geometric data models, independent
|
||||
of each other, can appear within the data model of any application. The system provides
|
||||
the means to convert each atomic transient data model into a persistent one, but
|
||||
it does not provide a way for these data models to share data.
|
||||
Persistent Geometry consists of a set of atomic data models parallel to the geometric data structures described in the geometry packages. Geometric data models, independent of each other, can appear within the data model of any application. The system provides the means to convert each atomic transient data model into a persistent one, but it does not provide a way for these data models to share data.
|
||||
|
||||
Consequently, you can create a data model using these components, store data in,
|
||||
and retrieve it from a file or a database, using the geometric components provided
|
||||
in the transient and persistent "worlds". In other words, you customize the system
|
||||
by declaring your own objects, and the conversion of the geometric components from
|
||||
persistent to transient and vice versa is automatically managed for you by the system.
|
||||
Consequently, you can create a data model using these components, store data in, and retrieve it from a file or a database, using the geometric components provided in the transient and persistent "worlds". In other words, you customize the system by declaring your own objects, and the conversion of the geometric components from persistent to transient and vice versa is automatically managed for you by the system.
|
||||
|
||||
However, these simple objects cannot be shared within a more complex data model.
|
||||
To allow data to be shared, you must provide additional tools.
|
||||
However, these simple objects cannot be shared within a more complex data model. To allow data to be shared, you must provide additional tools.
|
||||
|
||||
Persistent Geometry is provided by several packages.
|
||||
|
||||
@ -2924,7 +2882,6 @@ It is recommended to use option *Inherit access rights from parent*.
|
||||
|
||||
### Problems with 3D viewer
|
||||
|
||||
|
||||
If the 3D viewer fails to display the scene properly, or works very slowly, or exhibits
|
||||
another problem, make sure to have the latest version of the graphics card driver
|
||||
installed. If this is not possible or does not help, try to decrease
|
||||
|
Before Width: | Height: | Size: 264 B |
Before Width: | Height: | Size: 291 B |
Before Width: | Height: | Size: 966 B |
Before Width: | Height: | Size: 956 B |
Before Width: | Height: | Size: 250 B |
Before Width: | Height: | Size: 473 B |
Before Width: | Height: | Size: 387 B |
Before Width: | Height: | Size: 537 B |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 290 B |
Before Width: | Height: | Size: 479 B |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 400 B |
Before Width: | Height: | Size: 584 B |
Before Width: | Height: | Size: 481 B |
Before Width: | Height: | Size: 507 B |
Before Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 229 B |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 645 B |
Before Width: | Height: | Size: 224 B |
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 938 B |
Before Width: | Height: | Size: 680 B |
Before Width: | Height: | Size: 873 B |
Before Width: | Height: | Size: 859 B |
Before Width: | Height: | Size: 853 B |
Before Width: | Height: | Size: 552 B |
Before Width: | Height: | Size: 265 B |
Before Width: | Height: | Size: 294 B |
Before Width: | Height: | Size: 314 B |
Before Width: | Height: | Size: 508 B |
Before Width: | Height: | Size: 235 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 213 B |
Before Width: | Height: | Size: 220 B |
Before Width: | Height: | Size: 637 B |
Before Width: | Height: | Size: 553 B |
Before Width: | Height: | Size: 548 B |
Before Width: | Height: | Size: 549 B |
Before Width: | Height: | Size: 896 B |
Before Width: | Height: | Size: 234 B |
Before Width: | Height: | Size: 264 B |
Before Width: | Height: | Size: 257 B |
Before Width: | Height: | Size: 191 B |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 574 B |
Before Width: | Height: | Size: 540 B |
Before Width: | Height: | Size: 574 B |
Before Width: | Height: | Size: 593 B |
Before Width: | Height: | Size: 589 B |
Before Width: | Height: | Size: 236 B |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 407 B |
Before Width: | Height: | Size: 401 B |
Before Width: | Height: | Size: 373 B |
Before Width: | Height: | Size: 363 B |
Before Width: | Height: | Size: 492 B |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 643 B |