Depending on the magnitude of Ron's rotation's, the helmert transformation will not work as it has been implemented in lastools. Consider the example below.
>echo "100 0 0" > foo.txt
>las2las -i foo.txt -iparse xyz -rotate_xy 10.0 0 0 -o bar.txt -oparse xyz
# Correct results
>cat bar.txt
98.4807753 17.3648178 0.00
#angles are in arc seconds. 36000s is 10deg
>las2las -i foo.txt -iparse xyz -transform_helmert 0,0,0,0,0,36000,0 -o bar.txt -oparse xyz
# incorrect results
>cat bar.txt
100.0000000 17.4532925 0.00
The problem is that you are using small angle simplifications in your helmert transformation. For geodetic transformations, this is fine because the angles are generally very very small (usually measured in arc seconds or mas in modern transformations). But for larger rotation angles, the assumptions are no longer valid and the math applied in the rotation matrix breaks down.
Personally, I would like to see the helmert transformation in las2las support the full trigonometric solutions. These transformations are useful for applying arbitrary coordinate transformations and are commonly used to move back and forth between local grids and projected coordinates. But the rotations in these transformations are generally too big to use small angle simplifications.
Also note that your helmert transformation appears to be set up for the coordinate frame rotation convention commonly used in North America. Position vector rotations are the other convention and are more common in Europe. Does las2las have a switch allowing support of both?
Cheers,
Mike