Skip to content

Commit

Permalink
add docs about vertex properties, etc. (elalish#755)
Browse files Browse the repository at this point in the history
add docs
  • Loading branch information
elalish authored Mar 3, 2024
1 parent 6457ac9 commit e7edaf1
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 1 deletion.
3 changes: 2 additions & 1 deletion bindings/wasm/examples/editor.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ shareButton.onclick = () => {
encodeURIComponent(
currentFileElement.textContent + CODE_START + editor.getValue());
navigator.clipboard.writeText(url.toString());
console.log('Sharable link copied to clipboard!');
console.log('Shareable link copied to clipboard!');
console.log('Consider shortening this URL using tinyURL.com');
};

// File UI ------------------------------------------------------------
Expand Down
25 changes: 25 additions & 0 deletions src/manifold/include/manifold.h
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,31 @@ struct MeshGL {
* @brief The central classes of the library
* @{
*/

/**
* This library's internal representation of an oriented, 2-manifold, triangle
* mesh - a simple boundary-representation of a solid object. Use this class to
* store and operate on solids, and use MeshGL for input and output, or
* potentially Mesh if only basic geometry is required.
*
* In addition to storing geometric data, a Manifold can also store an arbitrary
* number of vertex properties. These could be anything, e.g. UV coordinates,
* colors, bone weights, etc, but this library is completely agnostic. All
* properties are merely float values indexed by channel number. It is up to the
* user to associate channel numbers with meaning.
*
* Manifold allows vertex properties to be shared for efficient storage, or to
* have multiple property verts associated with a single geometric vertex,
* allowing sudden property changes, e.g. at Boolean intersections, without
* sacrificing manifoldness.
*
* Manifolds also keep track of their relationships to their inputs, via
* OriginalIDs and the faceIDs and transforms accessible through MeshGL. This
* allows object-level properties to be re-associated with the output after many
* operations, particularly useful for materials. Since separate object's
* properties are not mixed, there is no requirement that channels have
* consistent meaning between different inputs.
*/
class Manifold {
public:
/** @name Creation
Expand Down

0 comments on commit e7edaf1

Please sign in to comment.