3D comet plot of multiple objects

Version 1.2.0.0 (3.12 KB) by CY Y
Plots trajectories of multiple objects in 3D with controllable speed and tail length
841 Downloads
Updated 4 Oct 2016

comet3n plots trajectories of multiple objects in 3D with controllable speed and tail length. It takes an M*5 array as an input. Column 1-4 is the (x,y,z,t) coordinate of an object, respectively. Column 5 is object id number. Time and object id number must both be integers. See example below or just run democomet3n.m
% Object 1
t = (1:500)*pi/50;
x = 16*(sin(t).^3);
y = 13*cos(t) - 5*cos(2*t) - 2*cos(3*t) - cos(4*t);
t = 1:500;
z = 0.5 * t;
id = ones(length(t), 1);
obj1 = cat(2, x', y', z', t', id);

% Object 2
t = (1:500)*pi/50;
x = -16*(sin(t).^3);
y = 13*cos(t) - 5*cos(2*t) - 2*cos(3*t) - cos(4*t);
t = 1:500;
z = -0.5 * t;
id = ones(length(t), 1)*2;
obj2 = cat(2, x', y', z', t', id);

% Combine two objects.
src = cat(1, obj1, obj2);

comet3n(src, 'speed', 5, 'headsize', 1.5, 'tailwidth', 2,...
'taillength', 100 )

Cite As

CY Y (2024). 3D comet plot of multiple objects (https://github.com/joe-of-all-trades/comet3n), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2016b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Object Containers in Help Center and MATLAB Answers
Tags Add Tags
Acknowledgements

Inspired by: 3D Comet Plot

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versions that use the GitHub default branch cannot be downloaded

Version Published Release Notes
1.2.0.0

Added demo
Updated description to include example.
updated description

1.1.0.0

Corrected minor error in code
linked to github
faster rendering

1.0.0.0

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.