DOC PREVIEW
Columbia COMS W4115 - IPL-slides

This preview shows page 1-2-3-24-25-26 out of 26 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

AGL : Animation applet Generation LanguageJianning YueWookyun KhoYoung Jin YoonAGL : Animation applet Generation LanguageContentsIPL?AdvantagesSyntaxDevelopmentExamplesLessons LearnedAGL : Animation applet Generation LanguageIPL?IPL is not Image Processing Language Now this is an Animation appletGenerationLanguage!AGL : Animation applet Generation LanguageAdvantages (1/2)IPL provide very flexible image handling Provide fundamental operation for image as expression Rotate (@ operator) Translate (‘operator) Scale (^ operator) Provide animate() function to produce an animated Image Provide coord type to handle coordinatesAGL : Animation applet Generation LanguageAdvantages (2/2)Easy to learn C like syntax and scope Easily-recognized operator (^ is power operator from another language)Productive Can be exported as an JAVA applet smaller than GIF Animated ImageAGL : Animation applet Generation LanguageSyntax : Types (1/3)Four types in IPL number image coord boolOptional declarator in IPL [] for array definitionsAGL : Animation applet Generation LanguageSyntax : Types (2/3) For both imgA[0] imgA[0~1] For lvalue imgA[1+] imgA[1~2+]AGL : Animation applet Generation LanguageSyntax : Types (3/3) For rvalue imgA[0-] imgA[1~2-]AGL : Animation applet Generation LanguageSyntax : Expr (1/4)Basic image operator imgA = imgA @ numA; // rotate operator imgA = imgA ^ numA; // scale operator imgA = imgA ` coordA; // set operator imgA = imgA : numA; // alpha operator imgA = imgA $ imgB; // concat operatorAGL : Animation applet Generation LanguageSyntax : Expr (2/4)Basic bool operator booA = numA > numB; // gt operator booA = numA < numB; // lt operator booA = numA >= numB; // ge operator booA = numA <= numB; // le operator  booA = numA == numB; // eq operator booA = numbooA != numbooB; // neq booA = !booA // not operatorAGL : Animation applet Generation LanguageBasic arithmetic operator numA = numA * numB; // multiply numA = numA / numB; // division numA = numA % numB; // modulo numA = numA + numB; // plus  numA = numA - numB; // minusFor coord, there is no operation. However we can still handle this. How?Syntax : Expr (3/4)AGL : Animation applet Generation LanguageFor coordination cooA = (xof(cooA),numA); cooB = (numA, yof(cooA));By providing xof() and yof(), we can still maintain flexibility without any complexibility! Syntax : Expr (4/4)AGL : Animation applet Generation LanguageProviding while, if statement just as almost same as C’s statement definition. Except using {} for single statement.You can define a function using defunc keywords. defunc foo (number A, number B) number C{ C = A + B; }Providing return, break, continue statements.Syntax : StmtAGL : Animation applet Generation LanguageDevelopmentTask DistributionArchitecture OverviewImplementationTest and Debug planAGL : Animation applet Generation LanguageTask distributionYoung Young Jin YoonJin YoonWookyunWookyun KhoKhoJianningJianning YueYueParserParserLexerLexerWalkerWalkerAnimationAnimationModuleModuleModuleModule &&IntegrationIntegrationTestTestAGL : Animation applet Generation LanguageArchitecture OverviewUsed UML Class DiagramAGL : Animation applet Generation LanguageImplementation (1/3)ANTLR Parser Lexer WalkerAnimation Module Animation Displaying Engine Animation Applet CodeAGL : Animation applet Generation LanguageImplementation (2/3)InputStreamTokenStreamLexer Parser AST WalkerASTSymbol TableException HandlingJava 2D Animation moduleIPLObjectNon Image OutputCreate/Invoke/Fetch/SetJava 2D Applet moduleDisplayDisplay ImagesImagesSaveSave AnimationAnimation InformationInformationAGL : Animation applet Generation LanguageImplementation (3/3)Animation Applet If you do “export”, you have to specify the filename. Ex) export to “IPLoutput.ipl”<applet code=IPLApplet.class width=1024 height=600><param name="fps" value="20"><param name="ipl" value="IPLoutput.ipl"></applet>AGL : Animation applet Generation LanguageTest and Debug Plan Test plan  Control statement  Function call Static scope Static image display Image rotation Image scale Image rotate Image set Image alpha Image animation Image Array animation Combined Image animation Debug Plan Make debug flag and debug() for debugging Using assert() Using eclipse IDE  Good for debuggingAGL : Animation applet Generation LanguageExamples (1/4)Basic Arithmetic, CoordinationResults:(1,3)4.0AGL : Animation applet Generation LanguageStatic imageExamples (2/4)sshield.jpgsshield.jpgAGL : Animation applet Generation LanguageAnimated imageExamples (3/4)strawberry.jpgstrawberry.jpgAGL : Animation applet Generation LanguageExamples (4/4)GIF animationAGL : Animation applet Generation LanguageLessons learnedThings learned from Software Engineering actually works!Still, Team management. Especially for Time management Hard to find implement together!Need more fair distribution to learn To learn something, everybody should do every procedure together that we have.Clarify how compiler works!AGL : Animation applet Generation LanguageThank you for listening our


View Full Document

Columbia COMS W4115 - IPL-slides

Documents in this Course
YOLT

YOLT

13 pages

Lattakia

Lattakia

15 pages

EasyQL

EasyQL

14 pages

Photogram

Photogram

163 pages

Espresso

Espresso

27 pages

NumLang

NumLang

6 pages

EMPATH

EMPATH

14 pages

La Mesa

La Mesa

9 pages

JTemplate

JTemplate

238 pages

MATVEC

MATVEC

4 pages

TONEDEF

TONEDEF

14 pages

SASSi

SASSi

16 pages

JTemplate

JTemplate

39 pages

BATS

BATS

10 pages

Synapse

Synapse

11 pages

c.def

c.def

116 pages

TweaXML

TweaXML

108 pages

Load more
Download IPL-slides
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view IPL-slides and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view IPL-slides 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?