Cone

Sparse Cone

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D  # noqa

from km3pipe.math import SparseCone
import km3pipe.style

km3pipe.style.use("moritz")

spike = [0, 0, 1]
bottom = [0, 0, 0]
angle = np.pi / 4
n_angles = 20
cone = SparseCone(spike, bottom, angle)
circ_samp = cone.sample_circle(n_angles=n_angles)
axis_samp = cone.sample_axis
samp = cone.sample(n_angles)

samp = np.array(samp)

plot the same in 3D because why not?

fig = plt.figure()
ax = plt.axes(projection="3d")
ax.scatter(samp[:, 0], samp[:, 1], samp[:, 2], "yo")
plot sparsecone
<mpl_toolkits.mplot3d.art3d.Path3DCollection object at 0x7f4cd3cf2ee0>

Total running time of the script: (0 minutes 0.171 seconds)

Gallery generated by Sphinx-Gallery