I need an answer for my program I'm making, but I feel like this is more mathematics than programming. This image explains some of what I need.
$(a,b,c)$ is a 3d rotation represented as an Euler angle. Using the given varibles, how would check if a point is in the cylinder with radius $w$, height $l$, and rotated $(a,b,c)$ from the point $(x,y,z)$?
The drawling isn't clear, but the midpoint of the circle on the cylinder is at $(x,y,z)$
I'm looking for some kind of formula that would that would be true if the point was in the cylinder.
I apologize for the bad drawing, as it's hard to represent what I'm asking in a 2d drawing.

Step 1: get the direction of the axis of the cylinder in Cartesian coordinates. I don't know which convention you use, but you can get the rotation matrix using https://en.wikipedia.org/wiki/Euler_angles#Rotation_matrix. You apply this rotation to the vector (1,0,0) and you get the vector $\vec{v}$ along the axis of the cylinder.
Step 2: You want to look at some point $\vec{p}=(x_1,y_1,z_1)$. For simplicity $\vec{p}_0=(x,y,z)$. The length along the cylinder of $\vec{p}-\vec{p}_0$ is given by $(\vec{p}-\vec{p}_0)\cdot \vec{v}$. You can check if the length is between $0$ and $l$.
Step 3: The vector from $\vec{p}$ perpendicular to the axis of teh cylinder is $\vec{p}-\vec{p}_0-[(\vec{p}-\vec{p}_0)\cdot \vec{v}]\vec{v}$. Just take the magnitude of this vector, and check if it's smaller than $w$