Some complex math for sure... do-able, but Im not sure how.
while {_i < 90} do {
_x = (_howBigA * (sin _i));
_y = (_howBigB * (cos _i));
_x_rot = _xPos + _x*(cos _angle) - _y*(sin _angle);
_y_rot = _yPos + _x*(sin _angle) + _y*(cos _angle);
_k = createVehicle ["Danger",[_x_rot, _y_rot,0], [], 0, "NONE"];
_m = createMarker [format ["Marker" + str _i],[ _x_rot, _y_rot,0]];
format ["Marker" + str _i] setMarkerType "Dot";
_k setDir _i;
format ["Marker" + str _i] setMarkerDir (_i - _angle);
_i = _i + (90/_tablesC);
};
Might get you started, not sure.