#12001/7/9 23:26:11
union() to viewpoint 22条:
union() to viewpoint -
union()
语法: rect(1).union(rect(2))
union (rect1, rect2)
描述:此函数将返回一包含指定矩形rect(1)与矩形rect(2)的最小矩形区.
举例:以下语句返回一个包含特定矩形的矩形,以数组表示:
put union (rect (0, 0, 10, 10), rect (15, 15, 20, 20))
-- rect (0, 0, 20, 20)
or
put rect(0, 0, 10, 10).union(rect(15, 15, 20, 20))
--rect (0, 0, 20, 20)
相关命令参考: map(), rect()
unLoad
语法: unLoad
unLoad theFrameNum
unLoad fromFrameNum, toFrameNum
描述:本命令将指示director将在特定帧中使用过的造型成员从内存中卸载,此外director会自动将新近使用过的造型成员从内存中卸载以适应其他造型成员的预先载入和普通载入.
当指令不带参数时,本命令将卸载电影所有帧中使用过的演员.
当带参数theframenum使用时,本命令将卸载指定帧中的造型成员.
当带有参数fromframenum和toframenum时,本命令将从内存中卸载由fromframenum和toframenum界定的特定范围帧中的造型成员.
举例:
1.以下语句将把由标记帧”first”起至标记帧”last”范围内所有帧中的造型成员从内存中卸载:
unLoad "first", "last"
2.以下语句将把第10帧使用过的造型成员从内存中卸载:
unLoad 10
相关指令参考: preLoad (command), preLoadMember, unLoadMember, purgePriority
unLoadMember
语法: unLoadMember
member(whichCastMember). unLoad()
unLoadMember member whichCastMember
member(whichCastMember, whichCastLib). unLoad()
unLoadMember member whichCastMember of castLib whichCast
member(firstCastmember). unLoad(lastCastMember)
unLoadMember member firstCastMember, lastCastMember
描述:本命令将指示director把特定的造型成员从内存中卸载. director会自动将新近使用过的造型成员从内存中卸载以适应其他造型成员的预先载入或普通载入.
当命令不带参数使用时,director将把电影所有帧中的造型成员从内存中卸载.
当带有参数whichcastmember和whichcast时,本命令将卸载由参数指定的特定造型成员,用户给出的参数表示的可以是造型成员的名称或造型成员的序号.
当带有参数firstcastmember和lastcastmember两个时,director将把演员表中从造型成员firstcastmember起至造型成员lastcastmember范围内的所有造型成员从内存中卸载.
当指定将要卸载的造型成员尚未载入内存时,使用本指令将返回一个错误值.
注意:以下情况下的造型成员不能使用本指令卸载:在著作时修改过的; 绘制修改过的;从剪贴板引入的;等
举例:
1.以下语句把造型成员”screen1”从内存中卸载:
unLoadMember member "Screen1"
or
member("Screen1").unload()
2.以下语句将把演员表中从1号造型成员到造型成员”big movie”间的所有造型成员卸载:
unLoadMember 1, member "Big Movie"
or
member(1).unload("Big Movie")
相关指令参照: preLoad (command), preLoadMember, purgePriority
unloadMovie
语法: unloadMovie whichMovie
描述:本命令卸载特定的预先载入的电影,对于内存有限的用户来讲,能使用本命令卸载特定的电影是很实用的.用户也可以通过URL来指定相关电影.如果指定的电影不在内存中,本命令返回值为”-1”.
举例:
1.以下语句检测用户的内存中是否存在连续的大于100k的空间,如果没有则将电影”Parsifal”卸载:
if (the freeBlock < (100 * 1024)) then unLoadMovie "Parsifal"
举例:以下语句卸载指定的电影http://www.cbDemille.com/SunsetBlvd.dir
unLoadMovie "http://www.cbDemille.com/SunsetBlvd.dir"
updateFrame
语法: updateFrame
描述:本命令仅仅在score生成的过程中使用,它用于将score生成过程中的变化更新入当前帧,然后转移至下一帧.在更新开始时,前帧中的所有对象都保持在当前帧.用户必须向每一个需要更新的帧发出此命令.
举例:当执行以下程序,将对当前帧所作的更改显示更新,而后转移到下一帧.反复如此,直到将由参数numberOfFrames界定的范围内的所有帧更新完毕:
on animBall numberOfFrames
beginRecording
horizontal = 0
vertical = 300
repeat with i = 1 to numberOfFrames
go to frame i
sprite(20).memberNum = member("Ball").number
sprite(20).locH = horizontal
sprite(20).locV = vertical
sprite(20).type = 1
sprite(20).foreColor = 255
horizontal = horizontal + 3
vertical = vertical + 2
updateFrame
end repeat
endRecording
end
See also beginRecording, endRecording, scriptNum, tweened
updateLock
语法: the updateLock
描述:这个电影属性规定在score生成过程中,舞台是否可以更新(TRUE 或 FALSE).如果此属性设置为真(TRUE),则在score生成过程中,舞台的显示在lingo更新舞台前保持不变. 如果此属性设置为假(FALSE),,则每进入一新帧时,舞台显示将被更新.
用户也可以使用此属性防止在离开某帧时,score发生不必要的更新.譬如:用户可能临时离开当前帧而去检测另一帧中的属性.
该提醒用户的是,尽管本属性可以在运行时掩饰某一帧中发生的变化.但是对于输入框造型成员,一旦被修改就会立即显示出变化,而其他对于位置和精灵中的造型成员的修改,只有当属性设置为假时舞台才会被更新.
updateMovieEnabled
语法: the updateMovieEnabled
描述:本系统属性规定了从当前电影跳转至另一电影时,对于前者中的改变是否自动予以保存.本电影属性默认值为”假”.可设置为”真”.
本属性可以检测也可设置.
举例:以下语句要求在由当前电影跳转到另一电影前,保存前者的变化:
the updateMovieEnabled = TRUE
updateStage
语法: updateStage
描述:此命令实现对舞台的即时更新,而通常舞台的更新是在帧间转换过渡时进行的.它可以实现重绘精灵;执行转换;播放音乐;发送prepareframe消息(影响电影脚本和行为脚本);发送stepframe 消息(影响actorlist).
举例:以下程序将改变某一精灵的水平、垂直坐标,并重绘舞台以显示新位置的精灵.从而摆脱依赖播放头的移动来实现同等效果:
on moveRight whichSprite, howFar
sprite(whichSprite).locH = sprite(whichSprite).locH + howFar
updateStage
end moveRight
URL
语法: member(whichCastMember).URL
the URL of member whichCastMember
描述:这个造型成员属性规定了shockwave音频(SWA)与flash电影造型成员的URL(通用资源定位器的简称).
对于flash电影造型成员,本属性与造型成员的pathname属性同义.它可以检测也可以设置.
对于SWA音频造型成员,此属性只有在SWA造型成员停止播放时才能设置.
举例:以下语句为造型成员”benny goodman”指定了一个互联网服务器上的链接文件:
on mouseDown
member("Benny Goodman").URL = "http://audio.macromedia.com/samples/classic.swa"
end
URLEncode
语法: URLEncode(proplist_or_string {, serverOSString} {, characterSet})
描述:本函数返回将第一附带参数转换成的URL编码字符串, 并允许其他命令调用CGI参数.对于附带指定属性表的postNetText和getNetText()指令,也执行相同的转换.
使用可选参数serverOSString来编译proplist-or-string中的返回值.参数serverOSString的默认值是”UNIX”,也可以设置为”WIN”或”MAC”, translates any carriage returns in the proplist_or_string argument into those used on the server.对于大多数应用程序,本设置是并非必需的,因为换行通常不在返回的表单中使用出现
可选参数characterset只提供给基于Shift-JIS系统(日语)的用户,它的可能值为"JIS", "EUC", "ASCII", 和"AUTO".得到的数据是按指定的字符设置从Shift-JIS转换来的. Retrieved data is converted from Shift-JIS to the named character set. Returned data is handled exactly as by getNetText() (converted from the named character set to Shift-JIS). If you use "AUTO", the posted data from the local character set is not translated; the results sent back by the server are translated as they are for getNetText(). "ASCII" is the default if characterSet is omitted. "ASCII" provides no translation for posting or results.
Example In the following example, URLEncode supplies the URL-encoded string to a CGI query at the specified location.
URL = "http://aserver/cgi-bin/echoquery.cgi"
gotonetpage URL & "?" & URLEncode( [#name: "Ken", #hobby: "What?"] )
相关指令参照: getNetText(), postNetText
useAlpha
语法: member(whichCastMember).useAlpha
imageObject.useAlpha
描述:这是位图造型成员和图片对象的属性, 当director将带有alpha信息的32-bit造型成员及图片对象绘制到舞台上时,本属性规定了director是否使用相关造型成员及对象的alpha信息,如本属性为真(TRUE),则使用alpha信息. 如本属性为假(false), 则忽略alpha信息.
举例:这条语句将对是否使用造型成员”foreground”的alpha通道信息的实现”开/关”控制:
member("foreground").useAlpha=not member("foreground").useAlpha
useFastQuads
语法: the useFastQuads
-- --“Quad”一词如何翻?--嵌入?
描述:当本全局属性设为真时,director将以快速、较粗略的方法计算嵌入操作.对于精灵的简单旋转与缩放,快速的嵌入计算提供更好的效果,但对于实现扭曲和其他任意效果时,director所默认的较慢的嵌入计算方式则提供更满意的视觉效果.
本属性默认值为假(FALSE).然而简单的精灵旋转和缩放操作常常启用快速的嵌入计算方式,而与本属性值无关.将本属性设置为真并不会提高这些简单操作的运算速度.
举例:以下语句将使director对电影中的所有嵌入操作使用更快的嵌入计算代码:
the useFastQuads = TRUE
相关命令参照: quad
useHypertextStyles
语法: member(whichTextMember).useHypertextStyles
描述:这个文本造型成员的属性控制文本造型成员中超文本链接的显示,当本属性值为真(true),所有的超文本链接将自动以带下划线的兰色文本显示,同时指向文本的鼠标变为手指状. 当本属性值为假(FALSE)时,将以普通文本显示并没有鼠标的改变.
举例:以下的行为脚本将实现对造型成员”mytext”中超文本显示的”开/关”控制:
on mouseUp
member("myText").usehypertextStyles = not member("myText").usehypertextStyles
end
userName
语法: the userName
描述:这是一个电影属性,其值是一个包含安装director时输入的用户名的字符串.此变量仅在著作环境下有效.它在MIAW中使用可用于显示用户信息.
举例:当打开窗口时,以下程序将实现在域文本中显示用户的信息及程序安装序列号(将本程序作为电影脚本放在MIAW电影中最合适.):
on prepareMovie
displayString = the userName
put RETURN&the organizationName after displayString
put RETURN&the serialNumber after displayString
member("User Info").text = displayString
end
相关指令参照: organizationName, serialNumber, window
value()
语法: value(stringExpression)
描述:本函数返回一个字符串的值.字符串stringExpression是lingo能接受的表达式,lingo对给出的stringexpression的值进行分析,并返回其逻辑值.任何能在信息窗口显示的表达式和能设为变量的值,都可用于本指令.以下两句代码是等价的:
put sprite(2).member.duration * 5
put value("sprite(2).member.duration * 5")
以下两句代码也是等价的:
x = (the mouseH - 10) / (the mouseV + 10)
x = value("(the mouseH - 10) / (the mouseV + 10)")
当lingo不能正确分析给出的表达式时,使用本指令将会返回意想不到的结果,而不会出现错误信息.返回的值等于字符串中第一个语法错误点的表达式的原始表达.
此函数对于解析用户在文本域中所输入的表达式和从Xtra返回的字符形式的字符串以及用户欲将之转换为lingo值的其他字符串时很有价值.
值得注意的是,某些情况下用本函数处理用户提供的字符串时是有危险的.譬如,当用户在域文本输入某个自定义处理程序的名称时,在经过本函数处理后,那个处理程序将被执行.
注意区别本函数的值与函数integer()和float()处理的值的作用.
举例:
1.以下语句显示字符串"the sqrt of" && "2.0"的值:
put value("the sqrt of" && "2.0")
The result is 1.4142.
2.以下语句将在信息窗口中显示字符串“penny”的值:
put value("penny")
而在信息窗口中显示的结果是” VOID”,因为不存在字符”penny”对应的变量值.
举例:
1.以下语句可让用户把类似列表结构的字符串转换成列表:
myString = "[" & QUOTE & "cat" & QUOTE & ", " & QUOTE & "dog" & QUOTE & "]"
myList = value(myString)
put myList
-- ["cat", "dog"]
通过此方式用户可以将列表放置在域造型成员或文本造型成员中,然后精确、随意地从中提取列表.
2.以下语句解析字符”3 5”,并将lingo能够理解的部分作为返回值:
put value("3 5")
-- 3
相关指令参照: string(), integer(), float()
version
语法: version
描述:这个关键词表示的是系统变量,包含了表示director版本信息的字符串.在Macintosh系统中,Finder信息窗口中显示同样的字符串.
举例:以下语句在信息窗口中显示director的版本信息:
put version
vertex
语法: member(whichVectorShapeMember).vertex[whichVertexPosition]
描述:这个块表达式允许用户直接访问一个矢量外形造型成员的vertexlist属性表的内容.使用它可以避免分解vertexlist中不同的块,使检测和设置vertexlist的值成为可能.
举例:
1.以下代码说明如何检测某个矢量外形造型成员的顶点数量:
put member("Archie").vertex.count
-- 2
2.用户通过以下代码可以得到指定造型成员的第二顶点的值:
put member("Archie").vertex[2]
-- point(66.0000, -5.0000)
3.用户也可以设置某个贝塞尔句炳的值:
member("Archie").vertex[2].handle1 = point(-63.0000, -16.0000)
相关指令参照: vertexList
vertexList
语法: member(whichVectorShapeMember).vertexList
描述:这个造型成员返回一个包含有属性列表的线性列表,其中每个属性列表对应于一个矢量外形造型成员的各顶点,包含顶点和控制句柄的信息. 对于位置为(0,0)控制句柄是不显示的.每个顶点有两个控制句柄,决定着此顶点与相邻顶点间的曲线.在vertexList中,一个顶点的控制句柄的坐标是相对于此顶点的,而不是它在外形成员中的绝对坐标.如果顶点的第一个控制句柄在此顶点的左方10象素处,那么它的位置就被记录为(-10,0).当顶点的位置被lingo改变时,控制句柄随顶点而变化而不必更新(除非用户特意更改控制句柄的大小与位置).
当更改属性时应注意:更改任何值后,用户应重置列表的内容.因为当用户用变量的值改变属性值时,变量中存放的是属性列表的拷贝而不是列表本身.应用以下语句使改变有效:
- Get the current property contents
currVertList = member(1).vertexList
-- Add 25 pixels to the horizontal and vertical positions of the first vertex in the list
currVertList[1] .vertex = currVertList[1] .vertex + point(25, 25)
-- Reset the actual property to the newly computed position
member(1).vertexList = currVertList
举例:以下语句将显示一条有两顶点的弧线的vertextList值:
put member("Archie").vertexList
-- [[#vertex: point(-66.0000, 37.0000), #handle1: point(-70.0000, -36.0000), \
#handle2: point(-62.0000, 110.0000)], [#vertex: point(66.0000, -5.0000), \
#handle1: point(121.0000, 56.0000), #handle2: point(11.0000, -66.0000)]]
相关指令参照: addVertex, count(), deleteVertex(), moveVertex(), moveVertexHandle(), originMode, vertex
video
语法: member(whichCastMember).video
the video of member whichCastMember
描述:这个视频造型成员属性规定了是否播放指定数字视频造型成员的图象成分,当属性为真(true)时播放数字视频造型成员的图象成分.当属性设置为假(false)时不播放.此属性只作用于数字视频造型成员的图象,即当属性值为假(false)时,视频仍将播放它的音轨(如果有的话).
举例:以下语句将关闭造型成员”interview”的视频图象的播放:
member("Interview").video = FALSE
相关指令参照: setTrackEnabled, trackEnabled
videoForWindowsPresent
语法: the videoForWindowsPresent
描述:这是个系统属性,表明计算机中是否有数字WINDOWS视频.此属性只能检测不能设置.
举例:以下语句检测系统中是否有WINDOWS视频, 如果没有则使电影跳转到标记”Alternate Scene”播放:
if the videoForWindowsPresent= FALSE then go to "Alternate Scene"
相关指令参照: quickTimeVersion()
viewH
语法: sprite(whichVectorOrFlashSprite).viewH
the viewH of sprite whichVectorOrFlashSprite
member(whichVectorOrFlashMember).viewH
the viewH of member whichVectorOrFlashMember
描述: 这个属性既是造型成员属性又是精灵属性,用于控制flash电影与矢量图的视点的水平坐标,单位是象素.它的值可以是浮点数.
一个FLASH电影的视点是以它的原点为参考的,将viewH设置为正值,使电影在精灵中向左偏移;而将viewH设置为负值,则使电影在精灵中向右偏移.因此改变此属性的值可以得到裁剪电影甚至从视野中移走电影的效果.
本属性可以检测也可以设置. 默认值为0。
注意:当精灵的缩放模式设为#autoSize时,本属性必需设置为默认值,否则精灵将无法正确显示.
举例:以下处理程序通过参数指定作用的FALSH电影精灵,并让FALSH电影在精灵的框架内从左向右移动:
on panRight whichSprite
repeat with i = 120 down to -120
sprite(whichSprite).viewH = i
updateStage
end repeat
end
相关指令参照: scaleMode, viewV, viewPoint, viewScale
viewPoint
语法: sprite(whichVectorOrFlashSprite).viewPoint
the viewPoint of sprite whichVectorOrFlashSprite
member(whichVectorOrFlashMember).viewPoint
the viewPoint of member whichVectorOrFlashMember
描述:这个属性既是造型成员属性又是精灵属性,用于控制flash电影与矢量外形的视点位于精灵的矩形中心,以象素为单位..更改造型成员的视点仅改变成员在精灵矩形中的视觉.而不改变精灵在舞台上的位置.视点的值是相对于造型成员内部坐标系的,并显示在精灵矩形的中心,即其表达的值是与电影成员的原点(即在属性originPoint, origin H, originV中设置的值)相关的.譬如,用户将一部FLASH电影的视点设为(100,200),那么精灵的中心位于FLASH电影的原点的右方100象素、下方100象素处,而无论原点位于何处.
作为director中表达点的属性,此属性有其特殊性.如点(100,100),设置FLASH电影的这个属性等同于分别设置viewH和viewV属性的值,将本属性设置为点(50,75)等同于将viewH设置为50、viewV设置为75.
用于表示此属性的值必须视整数形式,而viewH和viewV属性可以是浮点数.当用户检测本属性时,其值将被取整.因此,使用viewH和viewV属性可以更精确的设置,而使用本属性可以简化运算、提高速度.
本属性可以检测也可以设置. 默认值为(0,0)。
注意:当精灵的缩放模式设为#autoSize时,本属性必需设置为默认值,否则精灵将无法正确显示.
举例:以下处理程序将使指定的FLASH电影在其精灵矩形内以5个象素的单位向下、向右移动:
on panAcross whichSprite
repeat with i = 1 to 10
sprite(whichSprite).viewPoint = sprite(whichSprite).viewPoint + point(i * -5, i * -5)
updateStage
end repeat
end
相关指令参照: scaleMode, viewV, viewH, viewScale
------------------------------------------------------------------------------------------------------------------------------
----以下这条指令需要大家的帮助!:
URLEncode
语法:URLEncode(proplist_or_string {, serverOSString} {, characterSet})
描述 函数 它会返回URL-encoded 字符串给第一个参数, 它允许使用CGI参数在其他的指令里。 当它被赋值在一个属性列表里的时候, 也可以通过postNetText和getNetText来实现同样的功能。使用可选参数serverOSString 来encode任何返回的字符到属性列表或为字符串。确省设定为Unix, 但可以设定为Win 或者Mac并根据服务器的类型转化相应的回车符, 对于大多数的应用程序来说, 这并不必要, 因为表单的响应通常忽略换行。另一个可选参数characterSet仅应用在日文的操作系统环境下,其可能的设定有 "JIS", "EUC", "ASCII",以及 "AUTO"。获得的数据将会从日文转换为相应的字符设定,而返回的数据由getNetText()来处理(从设定的字符再转换为日文)。 如果你用"AUTO"这个设定,表单发送的信息将不会被翻译而保持原貌,结果则由服务器的理解翻译返回给getNetText()。 "ASCII" 在没有characterSet 设定时作为缺省设定。 "ASCII" 不提供任何翻译的信息.
下面的例子里, URLEncode 提供 the URL-encoded 字符串给 CGI进行一个在指定位置的查询.
URL = "http://aserver/cgi-bin/echoquery.cgi"
gotonetpage URL & "?" & URLEncode( [#name: "Ken", #hobby: "What?"] )
同时参见getNetText(), postNetText
编辑历史:[这消息被机器猫编辑过(编辑时间2001-07-10 07:02:49)]
[这消息被flyingbird编辑过(编辑时间2001-07-11 20:26:18)]
[这消息被flyingbird编辑过(编辑时间2001-07-12 06:02:05)]
[这消息被flyingbird编辑过(编辑时间2001-07-12 06:05:41)]