Home   Help Search Login Register  

Author Topic: Getting the pitch angle of a helicopter  (Read 2982 times)

0 Members and 1 Guest are viewing this topic.

Chris330

  • Guest
Getting the pitch angle of a helicopter
« on: 06 Apr 2005, 13:52:56 »
Is this possible. I was thinking of scripting a camera script which points the camera at a game logic unit next to a helo. The camera then follows the game logic unit using a sciprt which updates its position every 0.01 seconds. The only problem is I would like to make it as if the camera were fixed to the helicopter so it matched its pitch angle. To do this I would need to be able to find out the helicopter's pitch angle so I could adjust the height at which the camera looked at the game logic unit thus matching the helo's pitch angle.

Soooo...

Is this possible? Or will I have to just stick with a script that ignores the helos pitch angle and keeps the cameras angle to the game logic unit constant ???
« Last Edit: 06 Apr 2005, 23:32:21 by Chris330 »

UNN

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #1 on: 06 Apr 2005, 14:08:17 »
Quote
To do this I would need to be able to find out the helicopter's pitch angle so I could adjust the height at which the camera looked at the game logic unit thus matching the helo's pitch angle.

Thats possible, the easiest way (as usual with OFP there is more than one way to skin a cat). Take the Height Above Sea Level (Vektorbosons function will do this, among others) of the Helicopter and It's Pilot, while placed on flat ground. Calculate the angle between the the heli and the pilots position and store this as an offset.

Then while in game, repeat the process but compare the result with the offset you recorded earlier. That will give you it's pitch (or bank) relative to the horizon, at any point in time.

This will work ok most of the time, a few things conspire to give you false readings for Height Above Sea Level. But assuming you wont want your camera to swing about to wildly, I'd just cap the values you use to move the camera about.

BTW What heli if any specific one, do you want to use this with?

Offline macguba

  • Former Staff
  • ****
    • macguba's operation flashpoint page
Re:Getting the pitch angle of a helicopter
« Reply #2 on: 06 Apr 2005, 14:52:26 »
I assume you are familiar with Blanco's Logiccam script in the Ed Depot.
Plenty of reviewed ArmA missions for you to play

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #3 on: 06 Apr 2005, 16:50:34 »
I had never heard of it before but I just looked it up and looks great. Using two game logic units to get the pitch of it assume? A bit like the heli and pilot suggestion. A great idea. I'll try and make my own script using this for the hell of it and see how I get on.

I'll try it tonight and if one of you wouldn't mind testing it for me that would be great :D

Offline Blanco

  • Former Staff
  • ****
Re:Getting the pitch angle of a helicopter
« Reply #4 on: 06 Apr 2005, 16:57:41 »
My script is exactly what you're talking about Chris, but the camera is not fixed so the choppers pitch angle matches, but it works great with landvehicles.
Updating each 0.01 sec doesn't give you a smooth result, you'll need a constant loop. I even tried ~0.0000001, it still give you a bad headache...  :P
When you use Vectorbossons function to correct this, it wil be called all the time and I think it will cause a crash to desktop.



 
   

Search or search or search before you ask.

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #5 on: 06 Apr 2005, 19:36:20 »
WOW a reply from the man himself :D Cheers mate. I'm having a go at the script but I am thinking it will be quite hard to keep the game logic units in the same place with regard to the helicopter. I imagine it means lots of use of sine and cosine functions to do it as the helicopter will not always be facing directly north or south for example. I will have a go tonight and we'll see how I get on. I'm sure it could be done, even if it takes me a few months. It's more interesting than what I'm doing in work anyway :-X

Offline 456820

  • Contributing Member
  • **
Re:Getting the pitch angle of a helicopter
« Reply #6 on: 06 Apr 2005, 20:19:23 »
another simple well depends if you are using a game logic its a bit harder but with out
just use

Code: [Select]
# loop
_cam cameraeffect ["internal", "back"]
_cam camsettarget helicopter
_cam camsetrelpos [0,15,1]
_cam camcommit 0
~0
goto "loop"
? obj1 : goto "next part of script
# "next part of script"

whereas the camsettarget helicopter aims the cam at the chopper but i assume you already know that and the [0,15,1] means place the camera 0m left or right 15m back and 1m high you can adjust this to suit you

thats what i do when i need to attatch a cam to a vechile
i will explain alittle if you donr understand
it basically keeps looping that part until and objective variable is true or in this example obj1 then it goes to the next part of the script

Offline Blanco

  • Former Staff
  • ****
Re:Getting the pitch angle of a helicopter
« Reply #7 on: 06 Apr 2005, 20:36:43 »
Quote
means place the camera 0m left or right 15m back and 1m high you can adjust this to suit you

hmmm, this only true when the chopper is facing north.
To fix this so the camera stays always in the same relative position (regardless his direction), you'll need some cos-sin stuff.
Search or search or search before you ask.

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #8 on: 06 Apr 2005, 22:29:42 »
hmmm, this only true when the chopper is facing north.
To fix this so the camera stays always in the same relative position (regardless his direction), you'll need some cos-sin stuff.


Which I have just done tonight :D It works a treat I use the cosine and sine functions of an offset x value to get the game logic's x and y position to keep it the same place with respect to the helicopter regardless of its heading and I update the script by pointing the camera at the game logic using a loop :D

The result is one nicely placed camera which follows the aircraft's heading all the way through at a fixed position with respect to the aircraft 8)

Now if I can just work out the pitch thing we'll be sorted ;)

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #9 on: 06 Apr 2005, 23:24:49 »
Hmm. I'm unsure the pitch thing would work given how much the chopper moves around the screen in the vertical axis even with a 0.001 time delay loop. I have written a nice little demo mission Vietnam style with a huey if anyone wants me to e-mail it to them? Maybe I should submit the script to the editor's depot ??? ;)

Offline macguba

  • Former Staff
  • ****
    • macguba's operation flashpoint page
Re:Getting the pitch angle of a helicopter
« Reply #10 on: 06 Apr 2005, 23:31:46 »
Quote
Maybe I should submit the script to the editor's depot  
Of course you should!  :thumbsup:   Providing its been beta tested of course.

If in doubt, always submit.    Where's the harm?   Demo missions for scripts are strongly encouraged, although try and use default units if you possibly can.   It's a real chore to have to download an addon just to see if a script does what you need.
Plenty of reviewed ArmA missions for you to play

Offline dmakatra

  • Members
  • *
  • Better known as Armsty
Re:Getting the pitch angle of a helicopter
« Reply #11 on: 06 Apr 2005, 23:54:58 »
Then, there is allways the dschulle functions:

http://www.ofpec.com/editors/funcref.php?filter_auth=dschulle

However, they seem to be un-downloadable. And they have been for ages and ages and ages and ages and ages and ages. *Hint for KtottE/HuBBa or whoever the PHP master is around here* ;)

I want those bloody functions! ;D

I've been wanting them for like 8 months now. :'(

:beat: *Gets Shot* :beat:
« Last Edit: 06 Apr 2005, 23:57:18 by dmakatra »

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #12 on: 07 Apr 2005, 09:51:37 »
Thats possible, the easiest way (as usual with OFP there is more than one way to skin a cat). Take the Height Above Sea Level (Vektorbosons function will do this, among others) of the Helicopter and It's Pilot, while placed on flat ground. Calculate the angle between the the heli and the pilots position and store this as an offset.

Then while in game, repeat the process but compare the result with the offset you recorded earlier. That will give you it's pitch (or bank) relative to the horizon, at any point in time.

This will work ok most of the time, a few things conspire to give you false readings for Height Above Sea Level. But assuming you wont want your camera to swing about to wildly, I'd just cap the values you use to move the camera about.

BTW What heli if any specific one, do you want to use this with?

Thanks for the reply UNN. Sorry I overlooked this post. I will look into your solution. I am planning to use it witrh the SEB Nampack2 Hueys. I will however, make the demo mission using default units as macguba said ;)

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #13 on: 07 Apr 2005, 19:08:45 »
I GOT IT TO WORK!!!!! Without the get pitch function. I have to say however I am using the difference in height between the pilot and helicopter because I don't have the get pitch function from deschulle yet. Hopefully that will be back online soon. If anyone's interested I will send them a demo mission via e-mail.

Because of varying differences between heli position and pilot position some helicopters do not work well with this (the camera has a tendency to point up in the air). Works great with the Apache, AH1, and Mi-17 though.

If I can get the getpitch function then I will be able to massively update this script to work with any helicopter. Also due to OFP limitations sometimes the heli bobs up and down on the screen quite jerkily. This is an OFP flaw as there is nothing wrong with the code ;)

Here's the code:

Quote
_camoffx = 5
_camoffy = -8
_helo = heli1
_pilot = pilot1
_cam1 = "camera" camcreate [0,0,0]
_cam1 cameraeffect ["internal", "back"]
_cam1 camsettarget cameraeffect1
_cam1 camsetrelpos [0,0,0]
_cam1 camcommit 0


#start
_cam1 camsettarget cameraeffect1
;Get hypotenuse of distance from pilot to helicopter
_x2 = getpos _pilot select 0
_x1 = getpos _helo select 0
_xdiff = _x2 - _x1
_y2 = getpos _pilot select 1
_y1 = getpos _helo select 1
_ydiff = _y2 - _y1
_l = sqrt((_xdiff^2) + (_ydiff^2))
;Get height difference from pilot to helicopter
_z2 = getpos _helo select 2
_z1 = getpos _pilot select 2
_zo = _z2 - _z1
;Find hypotenuse to get sin and cosine of angle
_h = sqrt((_l^2)+(_zo^2))
_sinangle = _zo/_h
_cosangle = _l/_h
;evaluate where camsetrelpos command should set the camera to for _camoffy
_e = (_sinangle) * (_camoffy)
_a = (_cosangle) * (_camoffy)
_heading = getdir _helo
_angle = 360 - _heading
_xa = (cos (_angle)) * _camoffx
_ya = (sin (_angle)) * _camoffx


;Get position co-ordinates of helicopter
_xh = getpos _helo select 0
_yh = getpos _helo select 1
_zh = getpos _helo select 2

;Position the object
cameraeffect1 setpos [(_xh + _xa),(_yh + _ya),_zh]
cameraeffect1 setdir _heading
_cam1 camsetrelpos [0,_a,-(_e)]
_cam1 camcommit 0
~0.0001
?camend : exit
goto "start"


 8) 8)
« Last Edit: 07 Apr 2005, 19:15:03 by Chris330 »

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #14 on: 07 Apr 2005, 19:19:11 »
Correction!! I know why it jerks about. It is because of the difference between pilot and helicopter height values when they are over uneven terrain. This will be eliminated if I can get hold of the getpitch function ;)
« Last Edit: 07 Apr 2005, 19:19:32 by Chris330 »

Offline Blanco

  • Former Staff
  • ****
Re:Getting the pitch angle of a helicopter
« Reply #15 on: 07 Apr 2005, 20:14:11 »
I just tried the script and I had a generic error in expression in cameraeffect1 setpos [(_xh + _xa),(_yh + _ya),_zh]

My mission setup :

- A AH1 named helo1
- A pilot named pilot1 (this moveindriver helo1 in the init)
- A gamelogic named cameraeffect1

I run the script without params : [] exec "nameofscript.sqs"

 
Search or search or search before you ask.

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #16 on: 07 Apr 2005, 20:30:34 »
Quote
_camoffx = 5
_camoffy = -8
_helo = heli1
_pilot = pilot1
_cam1 = "camera" camcreate [0,0,0]
_cam1 cameraeffect ["internal", "back"]
_cam1 camsettarget cameraeffect1
_cam1 camsetrelpos [0,0,0]
_cam1 camcommit 0


#start
_cam1 camsettarget cameraeffect1
;Get hypotenuse of distance from pilot to helicopter
_x2 = getpos _pilot select 0
_x1 = getpos _helo select 0
_xdiff = _x2 - _x1
_y2 = getpos _pilot select 1
_y1 = getpos _helo select 1
_ydiff = _y2 - _y1
_l = sqrt((_xdiff^2) + (_ydiff^2))
;Get height difference from pilot to helicopter
_z2 = getpos _helo select 2
_z1 = getpos _pilot select 2
_zo = _z2 - _z1
;Find hypotenuse to get sin and cosine of angle
_h = sqrt((_l^2)+(_zo^2))
_sinangle = _zo/_h
_cosangle = _l/_h
;evaluate where camsetrelpos command should set the camera to for _camoffy
_e = (_sinangle) * (_camoffy)
_a = (_cosangle) * (_camoffy)
_heading = getdir _helo
_angle = 360 - _heading
_xa = (cos (_angle)) * _camoffx
_ya = (sin (_angle)) * _camoffx


;Get position co-ordinates of helicopter
_xh = getpos _helo select 0
_yh = getpos _helo select 1
_zh = getpos _helo select 2

;Position the object
cameraeffect1 setpos [(_xh + _xa),(_yh + _ya),_zh]
cameraeffect1 setdir _heading
_cam1 camsetrelpos [0,_a,-(_e)]
_cam1 camcommit 0
?camend : exit
goto "start"

Try it again mate. This should defo work as I have just tried it out. If not I will send you the demo mission ;)
« Last Edit: 07 Apr 2005, 20:38:11 by Chris330 »

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #17 on: 07 Apr 2005, 20:33:07 »
Anyhoo I tried to use the height above sea level script and it just went mad. Maybe distance is not a good command to use. To be honest I think it's a pretty useless script anyway as it jerks to hell whenever you go over raised areas of land. Worth it for a bit of fun though ;D

UNN

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #18 on: 07 Apr 2005, 21:39:49 »
Quote
Because of varying differences between heli position and pilot position some helicopters do not work well with this (the camera has a tendency to point up in the air). Works great with the Apache, AH1, and Mi-17 though.

The differences should not be a problem as OFP will handle very small numbers. I still think using pilot position and heli position is the best way to get the pitch. You can use shulle's drop method or dedicated game logics, but that's over egging the pudding in my book. Pilot pos and height are fine and require no extra scripting\objects. The only problem is when you define roadway LOD's in the heli, like the Bas choppers. This will mess up the height values, again there are ways around it, but most choppers should work ok.

Quote
Correction!! I know why it jerks about. It is because of the difference between pilot and helicopter height values when they are over uneven terrain. This will be eliminated if I can get hold of the getpitch function

This can be fixed with a height above sea level function, you use it to level out the differences in the terrain. But you still need to calculate the angle between the two position.

There should be enough info in this:

http://homepages.gotadsl.co.uk/~gssoft/GameLogic.zip

You will have to change the functions to get the height from the pilot position and heli position. But all the basics are there.

Quote
When you use Vectorbossons function to correct this, it wil be called all the time and I think it will cause a crash to desktop.

Vectorbossons function will not cause a CTD, but a slight change will ensure the least amount of strain, on OFP:

Calling script:

Code: [Select]
_PitchOffset=_This Select 0

_Sensor="EmptyDetector" createVehicle [0,0,0]

#Loop

@(true)

_HPos=GetPos _Heli
_PPos=GetPos (Driver _Heli)

_HHeight=[GetPos _Heli,_Sensor] Call VB_NextHASL
_PHeight=[GetPos (Driver _Heli),_Sensor] Call VB_NextHASL

_Pitch=(_HHeight-_PHeight) ATan2 (Sqrt((((_HPos Select 0)-(_PPos Select 0))^2) + (((_HPos Select 1)-(_PPos Select 1))^2))))+_PitchOffset

;Camera code goes here

If (Alive _Heli) Then {goto "Loop"}

DeleteVehicle _Sensor

_PitchOffset - Is the angle between the pilot and the heli when the aircraft is parked on level terrain.

VB_NextHASL.sqf:

Code: [Select]
Private ["_currpos","_result","_sensor"];

_CurrPos=_This Select 0;
_Sensor=_This Select 1;

_Result=0;

_Sensor SetPos [0,0,0];
_Sensor SetPos [(_CurrPos Select 0),(_CurrPos Select 1),0];
_Result=(GetPos _Sensor ) select 2;

_Result

If it's still to jerky, then limit the amount the camera will move in any one frame. It might mean the camera trails a little behind the helicopters movment, but that could look ok and make it a bit more dynamic. I'm not sure exactly what effect your after but 456820's suggestion of using camsetrelpos, could be the best one to use if it fits? After all thats what the command was designed for.



Offline Flauta

  • Members
  • *
  • There is no knownledge, that is no power
    • Chek mi FLog
Re:Getting the pitch angle of a helicopter
« Reply #19 on: 08 Apr 2005, 01:48:29 »
well... maybe a n offtopic cuestion.. but.. there is a way to calculate the pich angle of an vehicle??
'Cause i hae a little "objet, desplasament" script... but there is no way I can do it to get the angle of the vehicle... (not the azimut one)

the scprit says something like these

Code: [Select]

_veh = this select 0
_cargo = this select 1
_xoff = this select 2
_Yoff = this select 3
_zoff = this select 4

#loop
_dir = dir _veh
_pos = getpos _veh
_x = _pos select 0 + _xoff
_y = _pos select 1 + _yoff
_z = _pos select 2 + _zoff
_cargo setpos [_x,_y,_z]
_cargo setdir _dir



sometingh like that... it is just a  fast writing, Asumming there is no internal error and no writing error, Can I set the Pich Angle of _cargo Relative to _veh??


Flauta

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #20 on: 08 Apr 2005, 10:37:56 »
@UNN

Thanks for the detailed reply ;) To be honest I don't really understand the script you made but I can tell you that I wrote my own script to get absolute values and it ran like garbage. Can you tell me how to make a getpitch script like the one deschulle uses?

To be honest I doubt I will ever get it to work but it's maybe worth another try :)

UNN

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #21 on: 08 Apr 2005, 15:01:00 »
Quote
To be honest I don't really understand the script you made

You don't have to understand it yet, just copy and paste it. Once it's running it's not hard to work out what's happening.

Quote
Can you tell me how to make a getpitch script like the one deschulle uses?

Yes, but if you don't understand the above then it's probably a waste of both our time? As deschulle's drop method not only includes all of the above but also has six other scripts\functions that need explaining. Plus the additional layers of complexity you get with deschulle method, add their own problems.

So sorry, but I see no point explaining how to do something the hard way :)

Perhaps someone else can help by expanding on their ideas of how deschulle functions offer an advantage?

But I am happy to say I found my old copy of his functions. I tried to use them with the Inv44 Mortars a long time back, but they did not work. I think heli's should work, though.

Deschulle Pitch Bank Functions


@Flauta

Yes, just pass the vehicle to the script and change the variable _Heli, to the vehicle you pass in.
« Last Edit: 08 Apr 2005, 15:04:58 by UNN »

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #22 on: 08 Apr 2005, 15:25:01 »
Yes, but if you don't understand the above then it's probably a waste of both our time? As deschulle's drop method not only includes all of the above but also has six other scripts\functions that need explaining. Plus the additional layers of complexity you get with deschulle method, add their own problems.

So sorry, but I see no point explaining how to do something the hard way :)

Maybe I am just too thick to understand it ;D I'm sure I will given time. I have an idea what your script does just haven't picked through it yet. Thanks for providing the download mate :D

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #23 on: 08 Apr 2005, 19:58:54 »
As just posted at BI Forums:

IT REALLY WORKS 8)   Using dshculle's pitch function means the camera is stable and does not jump around. The helicopter moves up and down a bit when going over uneven terrain but I'm sure this is an OFP limitation and nothing to do with the script as I've had it happen when not using the pitch function too.   Anyone who is interested please get in touch and I will send you a demo mission :D

chris330330@hotmail.com  

Quote
 

_camoffx = 5
_camoffy = -8
_helo = heli1
_pilot = pilot1
_cam1 = "camera" camcreate [0,0,0]
_cam1 cameraeffect ["internal", "back"]
_cam1 camsettarget cameraeffect1
_cam1 camsetrelpos [0,0,0]
_cam1 camcommit 0



#start
_BankPitch = _helo call GetBankPitch
_Pitch = _BankPitch select 1
_sinangle = sin(_Pitch)
_cosangle = cos(_Pitch)

;evaluate where camsetrelpos command should set the camera to for _camoffy
_e = (_sinangle) * (_camoffy)
_a = (_cosangle) * (_camoffy)
_heading = getdir _helo
_angle = 360 - _heading
_xa = (cos (_angle)) * _camoffx
_ya = (sin (_angle)) * _camoffx


;Get position co-ordinates of helicopter
_xh = getpos _helo select 0
_yh = getpos _helo select 1
_zh = getpos _helo select 2

;Position the game logic
cameraeffect1 setpos [(_xh + _xa),(_yh + _ya),_zh]
cameraeffect1 setdir _heading
_cam1 camsetrelpos [0,_a,_e]
_cam1 camcommit 0
~0.00
1
?camend : exit
goto "start"

« Last Edit: 08 Apr 2005, 19:59:31 by Chris330 »

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #24 on: 09 Apr 2005, 16:41:50 »
As just posted at BI Forums:

UPDATE****

I now have this script working perfectly, The helicopter no longer moves vertically on the screen even over uneven terrain. The reason it was moving was because of lateral changes in height above the ground between the helicopter and game logic unit the camera points at. But using a triangle and the distance command...I fixed it :D  Helicopter now stays rock solid on the left or right of the screen and the camera changes angle to match it's pitch. Basically it's like having a a real camera screwed to the side of a helicopter  

Thanks very much for all the help I will now submit this to OFPEC's editing depot  :D
« Last Edit: 09 Apr 2005, 17:57:17 by Chris330 »

Offline dmakatra

  • Members
  • *
  • Better known as Armsty
Re:Getting the pitch angle of a helicopter
« Reply #25 on: 09 Apr 2005, 17:34:14 »
You don't have to understand it yet, just copy and paste it. Once it's running it's not hard to work out what's happening.Yes, but if you don't understand the above then it's probably a waste of both our time? As deschulle's drop method not only includes all of the above but also has six other scripts\functions that need explaining. Plus the additional layers of complexity you get with deschulle method, add their own problems.

So sorry, but I see no point explaining how to do something the hard way :)

Perhaps someone else can help by expanding on their ideas of how deschulle functions offer an advantage?

But I am happy to say I found my old copy of his functions. I tried to use them with the Inv44 Mortars a long time back, but they did not work. I think heli's should work, though.

Deschulle Pitch Bank Functions


@Flauta

Yes, just pass the vehicle to the script and change the variable _Heli, to the vehicle you pass in.

I LOVE YOU FOREVER!

:beat: *Gets Pitched* :beat:

Offline Blanco

  • Former Staff
  • ****
Re:Getting the pitch angle of a helicopter
« Reply #26 on: 09 Apr 2005, 18:01:46 »
I just tried it :)
NOW THAT IS A STABLE CAMERA!  :-*

Some suggestions :

I would prefer to create the gamelogics in the script so you don't have to place and name them in the editor. (and delete them afterwards when the script exit)

Can the same methode be used on my logiccam script?
Right now the camera is always pointed forward, is it possible to modify the script so you can run the script like this :

- 1) array with [x-y-z] camsetrelpos coords from the first gamelogic (cameraeffect1)  
- 2) array with [x-y-z] camsetrelpos coords from the second gamelogic(cameraeffect2)  
- 3) the vehiclename

[[-2,4,0],[6,7,1],heli1] exec "chase.sqs"
I hope you understand, this way you could follow a part from the vehicle like the nose or the landinggear...

Anyway, your script is marvelous work, take a break, you deserve it.  :)
 
 


« Last Edit: 09 Apr 2005, 18:42:40 by Blanco »
Search or search or search before you ask.

Chris330

  • Guest
Re:Getting the pitch angle of a helicopter
« Reply #27 on: 09 Apr 2005, 18:23:10 »
I am positively delighted you like the script :D I hope it will be of use to someone. I understand exactly what you meant and I think perhaps this is the next development I will make to it.

Put it this way...it can certainly be done ;) 8)