T-Spline Volume

This code creates and modifies T-Volume Objects in 3D. It has some bugs. Updates coming soon.
14 Downloads
Updated 2 May 2023

View License

The T_Volume class represents a T-spline volume in 3D space. Here's a summary of the code:
1. The T_Volume class definition:
- The T_Volume class has properties for control points, edges, and knot vectors in the U, V, and W directions.
2. Constructor:
- The constructor method takes an optional input argument, `cp`, which is a 4D array of control point data.
- If `cp` is provided, the constructor initializes the T-spline volume based on the control point data.
- It creates the knot vectors in the U, V, and W directions and initializes the control points and edges.
3. Control Points:
- The controlpoint property is a vector of ControlPoint objects.
- ControlPoint objects represent the control points in the T-spline volume.
- Each ControlPoint object has properties for 3D coordinates (X, Y, Z), U, V, and W vectors, and references to neighboring control points and edges.
4. Edges:
- The edge property is a vector of Edge objects.
- Edge objects represent the edges in the T-spline volume.
- Each Edge object has properties for direction, first and last tips, first and last control points, direction parameter coordinate, number, and plane.
5. Knot Vectors:
- The U, V, and W properties are vectors of Uknot, Vknot, and Wknot objects, respectively.
- Uknot, Vknot, and Wknot objects represent the knot vectors in the U, V, and W directions.
- Each knot object has properties for the previous and next knots, number, and value.
6. Plane:
- The Plane class represents a plane in 3D space.
- It has properties for the perpendicular coordinate, perpendicular number, parallel coordinate, and parallel number.
- Plane objects are used in Edge objects to define the orientation and position of the edges within the T-spline volume.
The T_Volume class provides a convenient way to represent and manipulate T-spline volumes in 3D space. It encapsulates the control points, edges, and knot vectors, allowing for efficient access and modification of the T-spline data.
This is an expansion of T-Spline Lab by Mohammad Sadeghi Pour Marvi
https://www.mathworks.com/matlabcentral/fileexchange/95298-t-spline-lab

Cite As

Robert Vivanco (2026). T-Spline Volume (https://www.mathworks.com/matlabcentral/fileexchange/128889-t-spline-volume), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2023a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags
Version Published Release Notes
0.1