`
noahgenius
  • 浏览: 140048 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

令人迷糊的width,rotation,scaleX

阅读更多
在as3里,我做了一个这样的尝试
js 代码
 
  1. var s:Sprite = new Sprite();  
  2. s.x = 100;  
  3. s.y = 100;  
  4. var gra:Graphics = s.graphics;  
  5. gra.beginFill(0x000000,1);  
  6. gra.drawRect(0,0,200,50);  
  7. gra.endFill();  
  8. this.addChild(s);  
  9.   
  10. trace(s.width);  
  11. s.rotation = 90;  
  12. trace(s.width);  
  13. s.width = 10;  
  14. trace(s.width);  
  15.   
  16. trace(s.scaleX);  
  17. s.scaleX = 5;  
  18. trace(s.scaleX);  
  19. trace(s.width);  
  20. trace(s.rotation);  
输出
js 代码
  1. 200  
  2. 50  
  3. 50  
  4. 0.2  
  5. 5  
  6. 50  
  7. 90  
简单分析一下:这里一开始的方形宽200,输出200,很正常,但是旋转90后(测试可以看到旋转过来了),但是width输出却是50,正好是原方形的 height。然后再调整一下宽度(s.width = 10),输出50(在图形上看旋转后的宽度确实变化了)。这些似乎不大合理。

我的猜想是:
根据flex 2 language reference
js 代码
 
  1. Implementation  
  2.     public function get width():Number  
  3.     public function set width(value:Number):void  
宽度的读和写分别是由set/get来执行的,set(写)的时候修改了元件的逻辑宽度(不被rotation,scale影响的),而get(读)的时 候却是取得了实际的宽度,是被rotation,scale等因素影响的,比如一个方形旋转后,水平宽度可能宽了,这就是实际看到的水平宽度。
分享到:
评论

相关推荐

    Python库 | scalex-0.0.8.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:scalex-0.0.8.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    VLAM scalex-开源

    标题“VLAM scalex-开源”表明我们正在讨论一个名为“VLAM scalex”的开源项目,它专注于图像处理。在IT行业中,开源软件是指源代码可供公众查看、使用、修改和分发的软件。这样的软件通常由全球社区的开发者协作...

    scalex:[废弃] 类似 Hoogle 的文档搜索引擎,用于 Scala

    阅读用法Scalex 是一个库,旨在成为应用服务器的依赖项,如 但是你可以直接运行 scalex 使其成为索引库。命令行界面命令具有以下格式: <config> <command> 创建数据库从 sbt 控制台: > run /path/to/scalex.conf ...

    实验2-1循环加法.rar_headeddwe_labview_scalex5w

    设计 VI程序,计算当n分别取0,1,2? ? ? ? ? ?10等数值时,代数式1+1/2+1/4+1/8+? ? ? ?...+1/512+1/2n 的值 (要求:利用 for 循环和移位器实现具体VI程序);同时计算该VI程序运行所需要的时间(可借助顺序结构来...

    WinForm窗体及其控件的自适应,winform控件随窗口自适应,C#

    control.Width = (int)(control.Width * scaleX); control.Height = (int)(control.Height * scaleY); if (control.HasChildren) ScaleControls(control.Controls, scaleX, scaleY); } } ``` 在上面的代码中...

    GDI+绘制矩形,并且实现可旋转、缩放、移动功能(基于MFC对话框)

    rotationMatrix.RotateAt(rotationAngle, PointF(rect.Width / 2, rect.Height / 2)); // 在矩形中心旋转 // 使用旋转后的矩阵绘制矩形 graphics.SetTransform(&rotationMatrix); graphics.DrawRectangle(&pen, ...

    AS3.0 图片点击缩放、旋转移动

    对于图片的缩放和旋转,我们可以利用ScaleX、ScaleY属性改变图片的大小,而rotation属性可以用来调整图片的旋转角度。 为了实现图片的点击事件,我们需要监听鼠标点击事件(MouseEvent.CLICK)。当用户点击图片时,...

    as3常用属性语句整理

    与as2.0相比,as3.0在属性命名上做了标准化调整,如用`width`、`height`替代了as2.0中的`_width`、`_height`,用`scaleX`、`scaleY`替代了`_xscale`、`_yscale`,这些变化体现了语言向更现代、更一致的语法结构演变...

    AS显示编程PPT学习教案.pptx

    DisplayObject类提供了许多通用属性和方法,如位置(x, y)、尺寸(width, height)、缩放(scaleX, scaleY)、旋转(rotation)、透明度(alpha)和可见性(visible)等,这些属性和方法定义了显示对象的基本特征和行为。...

    java图像局部放大

    (int)(width * scaleX), (int)(height * scaleY) ); g2d.drawImage(image, destRect.x, destRect.y, destRect.width, destRect.height, srcRect.x, srcRect.y, srcRect.x + srcRect.width, srcRect.y + srcRect....

    Flex布局之关于组件的大小

    然而,如果在MXML中使用的是百分比形式(如“width=‘50%’”),那么在ActionScript中,width属性将返回*percentWidth*的值。 ### 解决冲突与计算逻辑 在Flex布局中,当多个宽度相关的属性同时被设置时,Flex框架...

    gimp-plugin-pixel-art-scalers:Gimp插件,用于使用hqx,xbr和scalex等Pixel Art Scalers重新缩放图像

    为了解决这一挑战,GIMP(GNU Image Manipulation Program)开发了一款名为“gimp-plugin-pixel-art-scalers”的插件,该插件集成了一系列高效的Pixel Art Scalers,如hqx、xbr和scalex,旨在为像素艺术爱好者提供高...

    tansform属性

    let rotation = CGAffineTransform(rotationAngle: .pi / 2) view.transform = rotation ``` 这里的`.pi / 2`表示π/2弧度,即90度。 ### 3. 缩放(Scaling) 缩放操作通过修改`transform`中的缩放因子完成。例如,...

    Jquery的图片缩放等功能

    如果要保持图片的宽高比,可以同时设置`scaleX()`和`scaleY()`: ```javascript var scale = 0.5; img.css({ transform: "scale(" + scale + "," + scale + ")" }); ``` ### 4. 动态调整尺寸 除了CSS方式,还...

    gimp-plugin-pixel-art-scalers:用于通过Pixel Art Scaler算法(例如hqx,xbr和scalex)重新缩放图像的Gimp插件

    《GIMP像素艺术缩放插件:探索HQX、XBR和SCALEX算法》 在数字艺术领域,像素艺术以其独特的复古风格和精致细节深受喜爱。然而,处理像素艺术时,传统的图像缩放方法往往会导致失真和模糊,严重影响作品的视觉效果。...

    C#图像平移缩放

    int newWidth = (int)(image.Width * scaleX); int newHeight = (int)(image.Height * scaleY); // 创建一个新的Bitmap对象用于保存缩放后的图像 Bitmap scaledImage = new Bitmap(newWidth, newHeight); // 使用...

    WPF图片缩放

    double width = Image.Width * scaleTransform.ScaleX; double height = Image.Height * scaleTransform.ScaleY; if (width > Grid.Width || height > Grid.Height) { // 调整平移以保持图片中心在视图中心 ...

    ViewPager翻页效果

    总结一下,`ViewPager`翻页效果的自定义主要是通过`PageTransformer`接口来实现的,它可以让你的页面滑动变得更加生动和吸引人。通过学习和实践,你可以创造出各种独特的翻页动画,提升用户在使用应用时的交互体验。

    flash 发布html 铺满浏览器全屏,分辨自适应用as3布局元件

    target.scaleX = stage.stageWidth / target.width; target.scaleY = stage.stageHeight / target.height; } public function update() { target.scaleX = stage.stageWidth / target.width; target.scaleY =...

Global site tag (gtag.js) - Google Analytics