[질문] _xscale _yscale 로 늘어난 가로,세로값 구하는법
티나
스테이지에
가로 50 / 세로 50 셰이프사각형을 포함하고있는 가로 50 / 세로50 무비클립 bb가 있다고 가정하면,
with(_root.bb){
_width = 100;
_height = 100;
_xscale = 300;
_yscale = 300;
}
trace(_root.bb._width) // 150이 나옵니다.
실제 모니터상에 보이는것은 with문안에 설정해준것과 같이 가로 300 / 세로 300이 되었는데
수치상으로는 150이 찍혀버립니다.
_xscale _yscale 로 변경된 width height 값을 구하는 방법이 있을런지요?
퍼센트로 수식을 따로 만들려고 보니... 좀 석연치 않아서요 고수분들 부탁드립니다
-
중국드립 2023-09-21
그동안 스크립트 짤때마다 좀 뭔가 이상하다 싶었는데, 이런문제가 있었군요;;
숀마이박님 테스트도 해주시고 답변 정말 감사드려요 ^^ -
바름 2023-09-21
네. 제가 테스트 해본 결과...
원래 width50일때의 xscale 가 100 이고,
width = 100으로 한 후 trace(xscale) 하면 200이 나옵니다.
즉 width와 xscale 는 별개의 것이 아닌
xscale = 현재 변경되어진width / 원래의width * 100 으로 계산 되는 듯 합니다. -
통꽃 2023-09-21
위에 대로 하면 12000px 이 아니라
원래 가로50세로50 이었던거에서 4배가 되어 200px 으로 찍히는데요
이러면 width 값을 뭘로 주던 그 뒤에 xscale 값을 주게 되면 width값 설정은 무효가 되는건가요? -
밤 2023-09-21
숀마이박님 답변 감사드립니다.
제가 작은 수치로 계산을 하다보니 좀 착각을 했네요
말씀하신대로 trace수치와 실제수치는 동일한데요 문제가 좀 있습니다 ㅠㅠ
_root.bb._width = 3000;
_root.bb._xscale = 400;
trace(_root.bb._width)
이렇게 되면 가로값 3000px 에서의 4배가 되서 12000px 이 되는게 아닌가요?
width/height 값하고 xscale/yscale 값은 중복되는게 아닌 -
텐시 2023-09-21
원래 bb의 width = 50 입니다.
_xscale = 300 하면 50 * 300% 이므로 150이 나오는게 맞습니다.
실제 화면에 보이는 사이즈 또한 300이 아닌 150이 아닐까요?