displaylist – завершение Работа с медиа Сетевое...
TRANSCRIPT
![Page 1: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/1.jpg)
DisplayList – завершение
Работа с медиа
Сетевое взаимодейтсвие
Локальное хранение и передача данных
FLASH PLATFORM – ОБЗОРНЫЙ КУРС.ЛЕКЦИЯ 3
![Page 2: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/2.jpg)
DISPLAY LIST – ДРЕВОВИДНАЯ СТРУКТУРА
Stage
Sprite
Shape Sprite
MovieClip
SimpleButton
![Page 3: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/3.jpg)
ФИЛЬТРЫ
• DisplayObject.filters:Array
• Пакет flash.filters• GlowFilter
• BlurFilter
• DropShadowFilter
• ColorMatrixFilter
• GradientBevelFilter
• GradientGlowFilter
• ConvolutionFilter
• DisplacementMapFilter
• ShaderFilter
![Page 4: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/4.jpg)
ФИЛЬТРЫ
• DisplayObject.filters:Array
• Пакет flash.filters• GlowFilter
• BlurFilter
• DropShadowFilter
• ColorMatrixFilter
• GradientBevelFilter
• GradientGlowFilter
• ConvolutionFilter
• DisplacementMapFilter
• ShaderFilter
myObject.filters = [new BlurFilter(), new GlowFilter(0x00FF00)];
![Page 5: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/5.jpg)
DisplayObject.mask
МАСКИ
![Page 6: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/6.jpg)
![Page 7: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/7.jpg)
![Page 8: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/8.jpg)
![Page 9: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/9.jpg)
![Page 10: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/10.jpg)
• DisplayObject.mask:DisplayObject
• var mask:Shape = new Mask();
• //draw mask
• myObject.mask = mask;
![Page 11: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/11.jpg)
flash.display.BitmapData• .draw(source:IBitmapDrawable, matrix:Matrix = null,
colorTransform:flash.geom:ColorTransform = null, blendMode:String = null, clipRect:Rectangle = null, smoothing:Boolean = false):void
• Куча методов для работы с изображением
• Display – with new Bitmap()
• .getPixels(rect:Rectangle):ByteArray – извлечь пиксели.
![Page 12: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/12.jpg)
flash.utils.ByteArray – упакованный массив байтов
ЛИРИЧЕСКОЕ ОТСТУПЛЕНИЕ - BYTEARRAY
![Page 13: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/13.jpg)
BYTEARRAY• .length:uint
• .position:uint
• .readByte():int
• .readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
• .readBoolean():Boolean
• .readDouble():Number, readFloat():Number, readInt():int …etc
• .readUTF():String, .readUTFBytes(length:uint):String, .readMultiByte(length:uint, charSet:String):String
• .readObject():*
• .write*
![Page 14: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/14.jpg)
Пакет flash.media
Sound
Microphone
Video
Camera
РАБОТА С МЕДИА-ДАННЫМИ
![Page 15: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/15.jpg)
flash.media.Sound• new Sound();
• sound.load(new URLRequest(‘soundUrl.mp3’));
• sound.play(startTime:Number = 0, loops:int = 0, sndTransform:flash.media:SoundTransform = null):SoundChannel
• sound.close():void
• sound.extract(target:ByteArray, length:Number, startPosition:Number = -1):Number
• sound.id3:ID3Info
• Events:
• Event.OPEN
• ProgressEvent.PROGRESS
• Event.COMPLETE
• IOErrorEvent.IO_ERROR
• Event.ID3
• SampleDataEvent.SAMPLE_DATA
![Page 16: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/16.jpg)
flash.media.SoundTransform
• .volume : Number (0 – 1)
• …
• flash.display.SimpleButton.soundTransform
• flash.display.Sprite.soundTransform
• flash.media.Microphone.soundTransform
• flash.media.SoundChannel.soundTransform
• flash.media.SoundMixer.soundTransform
• flash.net.NetStream.soundTransform
![Page 17: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/17.jpg)
flash.media.SoundChannel• .position:Number (in ms)
• .soundTransform:SoundTransform
• .leftPeak:Number
• .rightPeak:Number
• .stop()
• Events:
• Event.SOUND_COMPLETE
![Page 18: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/18.jpg)
flash.media.SoundMixer
• Global sound control class
• .soundTransform:SoundTransform
• .stopAll():void
• .computeSpectrum(outputArray:ByteArray, FFTMode:Boolean = false, stretchFactor:int = 0):void
![Page 19: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/19.jpg)
flash.media.Microphone• .getMicrophone(index:int = -1):Microphone
• .names:Array
• …
• Events:
• ActivityEvent.ACTIVITY
• StatusEvent.STATUS
• SampleDataEvent.SAMPLE_DATA
![Page 20: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/20.jpg)
flash.media.Video
• Extends DisplayObject
• .attachCamera(camera:Camera):void
• .attachNetStream(netStream:NetStream):void
• .clear():void
• .videoHeight:int
• .videoWidth:int
• .smoothing:Boolean
![Page 21: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/21.jpg)
flash.media.Camera
• .names:Array
• .getCamera(name:String = null):Camera
• .setMode(width:int, height:int, fps:Number, favorArea:Boolean = true):void
• …
• Events:
• ActivityEvent.ACTIVITY
• StatusEvent.STATUS
![Page 22: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/22.jpg)
Пакет flash.net
URLLoader
URLStream
NetConnection, NetStream
XMLSocket, Socket
ВЗАИМОДЕЙСТВИЕ С СЕТЬЮ
![Page 23: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/23.jpg)
URLLoader• .load(request:URLRequest):void
• URLRequest – new URLRequest(url:String = null)
• .method – URLRequestMethod.GET/URLRequestMethod.POST
• .data – data to be sent. URLVariables/ByteArray/String
• .dataFormat:String =
• URLLoaderDataFormat.TEXT
• URLLoaderDataFormat.BINARY
• URLLoaderDataFormat.VARIABLES
• . data:*
• .bytesTotal:uint
• .bytesLoaded:uint
Events:
Event.OPENProgressEvent.PROGRESSSecurityErrorEvent.SECURITY_ERRORIOErrorEvent.IO_ERRORHTTPStatusEvent.HTTP_STATUSEvent.COMPLETE
![Page 24: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/24.jpg)
var request:URLRequest = new URLRequest(‘http://mydomain.com/service’);
var data:URLVariables = new URLVariables();
data.user = “nikitap”;
data.action = “remove”;
/// etc
request.data = data;
request.method = URLRequestMethod.POST;
var loader:URLLoader = new URLLoader(request);
loader.addEventListener(Event.COMPLETE, loader_completeHandler);
//….
private function loader_completeHandler(event:Event):void
{
var loader:URLLoader = URLLoader(event.target);
trace(loader.data);}
![Page 25: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/25.jpg)
flash.net.URLStream• Поточная загрузка
• ProgressEvent.PROGRESS – загрузка порции
• Чтение – аналогично ByteArray (IDataInput)
![Page 26: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/26.jpg)
flash.net.FileReference• Чтение, запись и отправка локальный файлов; загрузка файлов с сервера
• .browse(typeFilter:Array = null):Boolean
• .load():void
• .download(request:URLRequest, defaultFileName:String = null):void
• .save(data:*, defaultFileName:String = null):void
• .upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void
• .data : ByteArray
• .name : String
• .size : Number
• .type : Number
• Events:
• Event.OPEN, ProgressEvent.PROGRESS, Event.COMPLETE
• Event.SELECT, Event.CANCEL
![Page 27: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/27.jpg)
flash.net.NetConnection / flash.net.NetStream
• Воспроизведение .flv/.f4v – файлов по HTTP
• Обращение к Flash Remoting – сервисам (BlazeDZ, ZendAMF, AMFPHP, LCDS, GraniteDS, etc…)
• RTMP-cервера
• P2P-cоедиения
![Page 28: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/28.jpg)
flash.net.NetConnection - .f4v-видео
var nc:NetConnection = new NetConnection();
nc.connect(‘null’);
var ns:NetStream = new NetStream(ns);
ns.play(“http://mydomain.com/myvideo.f4v”);
var video:Video = new Video();
video.width = 640;
video.height = 480;
video.attachNetStream(ns);
addChild(video);
![Page 29: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/29.jpg)
flash.net.XMLSocket / flash.net.Socket
• TCP – соединение с сервером
• Любые протоколы
• XMLSocket – null-terminated messages
• .connect(host:String, port:int):void
• (for XMLSocket) .send(object:*)
• (for Socket) – the same as ByteArray
• Events:
• Event.CONNECT, Event.CLOSE
• (for XMLSocket) DataEvent.DATA (.data – received data)
• (for Socket) ProgressEvent.SOCKET_DATA
![Page 30: DisplayList – завершение Работа с медиа Сетевое взаимодейтсвие Локальное хранение и передача данных FLASH](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56649ef25503460f94c03906/html5/thumbnails/30.jpg)
flash.media.Camera