3ds Max C++ API Reference
Loading...
Searching...
No Matches
Screen-Time-Value Macros

These are macros used when working with Track View to scale into and out of screen space. More...

Macros

#define TimeToScreen(t, scale, scroll)
 Given a TimeValue t, if you have the time scale and time scroll factors, this macro returns the screen space X for that time.
#define ScreenToTime(s, scale, scroll)
 Given a screen coordinate s, if you have the scale and scroll factors, this macro will return a TimeValue for that screen position.
#define ValueToScreen(v, h, scale, scroll)
 Given a Value v, if you have the value scale and value scroll factors, this macro returns the screen space Y for that value.
#define ScreenToValue(s, h, scale, scroll)
 Given a screen coordinate s, if you have the scale and scroll factors, this macro will return a value for that screen position.
#define ScaleAboutOrigin(val, origin, scale)

Detailed Description

These are macros used when working with Track View to scale into and out of screen space.

Macro Definition Documentation

◆ TimeToScreen

#define TimeToScreen ( t,
scale,
scroll )
Value:
(int(floor((t)*(scale)+0.5)) - (scroll))
controller mat max min numsubs x z controller keys x z controller keys x z angle controller keys x_rotation z_rotation axis isAnimated scale
Definition generics.inl:260
MAXMEM_EXTERN_C UtilExport int(__cdecl *MAX_heapchk)(void)

Given a TimeValue t, if you have the time scale and time scroll factors, this macro returns the screen space X for that time.

◆ ScreenToTime

#define ScreenToTime ( s,
scale,
scroll )
Value:
((int)floor((s)/(scale) + (scroll)/(scale)+0.5))

Given a screen coordinate s, if you have the scale and scroll factors, this macro will return a TimeValue for that screen position.

◆ ValueToScreen

#define ValueToScreen ( v,
h,
scale,
scroll )
Value:
(h-int(floor((v)*(scale)+0.5)) - (scroll))

Given a Value v, if you have the value scale and value scroll factors, this macro returns the screen space Y for that value.

◆ ScreenToValue

#define ScreenToValue ( s,
h,
scale,
scroll )
Value:
((float(h)-(float(s)+float(scroll)))/(scale))

Given a screen coordinate s, if you have the scale and scroll factors, this macro will return a value for that screen position.

◆ ScaleAboutOrigin

#define ScaleAboutOrigin ( val,
origin,
scale )
Value:
((((val)-(origin))*(scale))+(origin))