Bài giảng Mô hình hóa thực tạo ảo VRML
lượt xem 18
download
Bài giảng "Mô hình hóa thực tạo ảo VRML" cung cấp cho người học các kiến thức về lịch sử của VRML, tính chất VRML, cấu trúc file VRML, phần tử cơ bản của VRML, hệ tọa độ, chuyển đổi một hệ tọa độ, bảng mà thường dùng, giới thiệu hoạt cảnh, điều khiển thời gian
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Mô hình hóa thực tạo ảo VRML
- Ng«n ng÷ m« h×nh hãa thùc t¹i ¶o VRML ? LÞch sö VRML VRML lµ mét ng«n ng÷ v¨n b¶n dïng ®Ó m« t¶ c¸c m«i tr−êng t−¬ng t¸c vµ c¸c vËt thÓ 3-D C¸c file text VRML cã ®u«i lµ .wrl VRML 1.0 dùa trªn ng«n ng÷ m« t¶ Silicon Graphics 3D gäi lµ “Open Inventor”. VRML 1.0 cho phÐp m« t¶ c¸c c¶nh tØnh vµ kh«ng t−¬ng t¸c. VRML 2.0 lµ mét ng«n ng÷ m« t¶ dùa trªn Silicon Graphics vµ ®−îc goi lµ “Moving Worlds”. VRML1 (1994) & VRML2 (1997) cã më réng thªm c¸c chñ ®Ò liªn quan (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 TÝnh chÊt CÊu tróc file VRML B¹n cã thÓ xem c¸c file VRML nhê tr×nh duyÖt VRML : Trong file VRML gåm cã : #VRML V2.0 utf8 Mét øng dông hç trî VRML §Çu ®Ò cña file # example1.wrl - a yellow box Mét øng dông VRML nhóng vµo mét tr×nh duyÖt HTML Comments – chó thÝch Shape B¹n cã thÓ xem c¸c file VRML tõ ®Üa cøng , hay qua m¹ng Internet cña b¹n { geometry Box{ } # default box Toµn bé trang Web Nodes – nót chøa c¸c appearance Appearance # override Nhóng vµo trang Web th«ng tin quan träng cña c¶nh vËt appearance Toµn bé khung cña trang Web {material Material # with a new Fields – c¸c thuéch tÝnh Nhóng vµo khung cña trang Web cña nót mµ b¹n cã thÓ material Nhóng vµo c¸c øng dông ®a thêi gian thay ®æi {diffuseColor 1.0 1.0 0.0 # B¹n cã thÓ t¹o c¸c file VRML nhê : Values – c¸c thuéc tÝnh yellow Mét tr×nh so¹n th¶o v¨n b¶n ®¬n gi¶n gi¸ trÞ } Mét ch−¬ng tr×nh øng dông Vµ . . . } Mét tr×nh dÞch ®Þnh d¹ng vµ m« h×nh hãa 3D } Mét ng«n ng÷ t¹o vËt thÓ (nh− ng«n ng÷ kÞch b¶n Perl ) (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Comments-chó thÝch PhÇn tö c¬ b¶n cña VRML: Nót Lêi chó thÝch b¾t ®Çu víi ký tù # . Mét file VRML gåm cã mét danh s¸ch c¸c nót, mçi nót chøa mét phÇn th«ng tin m« t¶ toµn c¶nh. Ký tù # trong nh¸y kÐp kh«ng ph¶i b¾t ®Çu chó thÝch. Mét nót cã thÓ ®Þnh nghÜa h×nh d¹ng vËt thÓ, hay thuéc tÝnh cña cña mét ®èi t−îng , nh− mµu mµu s¾c vµ hÖ täa ®é cña nã. Chó ý r»ng dßng ®Çu cña VRML 2.0 lµ : Mçi nót cã mét tªn, theo sau lµ cÆp dÊu { } cã thÓ kh«ng chøa tr−êng nµo #VRML 2.0 utf8 hoÆc nhiÒu tr−êng. vµ lµ b¾t buéc ! Mét c©u lÖnh tr−êng gåm cã tªn tr−êng sau ®ã cã thÓ cã mét hay nhiÒu gi¸ trÞ.C¸c tr−êng cã thÓ ®−îc viÕt theo c¸c trËt tù kh¸c nhau. Tõ khãa utf dïng ®Ó nãi ®Õn bé ký tù quèc tÕ UTF-8 ®−îc Tªn cña nót b¾t ®Çu b»ng ký tù hoa, tªn tr−êng b¾t ®Çu b»ng ký tù dïng trong file. th−êng (case sensitive). VÝ dụ về nót Lêi chó thÝch vµ kho¶ng tr¾ng cã thÓ kh«ng ®−îc b¶o toµn Shape, Box, Appearance, Material,lights, sounds, . bëi VRML document server. (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 1
- CÊu tróc ph©n líp CÊu tróc c¶nh Nót Shape chøa hai tr−êng, geometry vµ appearance, mçi tr−êng l¹i z Shape chøa c¸c nót kh¸c ®−îc coi nh− gi¸ trÞ cña chóng. geometry z Box Shape { appearance NULL exposedField SFNode appearance z Appearance geometry NULL exposedField SFNode material z Material } §«i khi nót Shape cã mét tr−êng Appearance nh−ng kh«ng cã tr−êng diffuseColor geometry (vÝ dô nh− c¸c vËt thÓ kh«ng nh×n thÊy!) VRML gióp b¹n chia mét líp thµnh c¸c khoanh cã thÓ qu¶n lý ®−îc . Mçi nót riªng lÎ th× rÊt ®¬n gi¶n, sù kÕt nèi gi÷a c¸c nót cho phÐp t¹o ra Tr−êng geometry chøa nót Box vµ tr−êng appearance coi nót c¸c líp phøc t¹p. Appearance nh− lµ gi¸ trÞ cña cã. Nót shape ®−îc t¹o nªn trung t©m cña thÕ giíi VRML . Nót Appearance l¹i chøa mét nót kh¸c lµ Material. Mét file VRML cã thÓ chøa nhiÒu nót shape C©u tróc c©y cña nót mµ nót l¹i ®−îc chøa trong nót kh¸c gäi lµ scene C¸c nót shape cã thÓ trïng lªn nhau khi chóng ®−îc t¹o nªn ë cïng mét graph. vÞ trÝ. B¹n nªn xem vµ sö dông mét trong c¸c tr−êng geometries sau (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 C¬ b¶n vÒ nót shape C¬ b¶n vÒ nót shape Nót Shape lµ nh÷ng viªn g¹ch Box Cylinder t¹o nªn thÕ giíi VRML C¸c nót {size 8 12 10 # x, y, z (=w, h, Shape gèc lµ c¸c khèi chuÈn : { radius 4 # chiÒu réng lµ 8 d) • Box height 6 } • Cone Xem code Ch¹y vÝ dô bottom TRUE # “cup” cã c¹nh vµ ®¸y • Cylinder • Sphere Cone side TRUE • Text { bottomRadius 5 # so 10 top FALSE # nh−ng kh«ng cã ®Ønh C¸c tr−êng cña nót Geometry units wide } ®iÒu khiÓn kÝch th−íc height 12 Xem code Ch¹y vÝ dô KÝch th−íc th−êng cã ®¬n vÞ lµ m, side TRUE nh−ng cã thÓ bÊt cø ®¬n vÞ g× Sphere # ®¬n gi¶n nhÊt trong c¸c nót shape bottom TRUE Xem code Ch¹y vÝ dô { radius 2 # nh−ng còng lµ phøc t¹p } Xem code Ch¹y vÝ dô } (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Nót text CÊu tróc ¶nh bitmap Tr¸nh t¹o ra c¸c ®Æc t¶ kü thuËt Web-based 3D/VR. Sö dông ¶nh bitmap thay cho mét m« h×nh 3D thËt cô thÓ cã thÓ tiÕt kiÖm Text rất hữu Ých ë c¸c hÖ chuyªn gia,vÝ dô nh− trong khoa häc vÒ trùc quan. ®−îc nhiÒu thêi gian xö lý... Text Tuy vËy viÖc sö dông réng r·i ¶nh bitmap cã thÓ cã nh÷ng bÊt lîi sau: { string “Hi!” # multi-field CÊu tróc cña ¶nh sÏ ®−îc gñi cho tr×nh duyÖt ,cã thÓ ph¶i qua mét length 0 # stretch to this width (0=natural width) qu¸ tr×nh th«ng tin chËm. fontStyle FontStyle ThiÕt kÕ mét ¶nh bitmap vµ ®−a nã lªn mµn h×nh lµ c«ng ®o¹n xö lý { family“SERIF” # or SANS or TYPEWRITER kh¸ lµ kü l−ìng. style “PLAIN” # or BOLD ITALIC size 4 } } Xem code Chaþ vÝ dô (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 2
- CÊu tróc trong VRML HÖ täa ®é Appearance Mét file VRML x©y dùng nªn c¸c thµnh phÇn cña thÕ giíi VRML { texture ImageTexture { url “skin.gif” # GIF, JPG or PNG Mét file thµnh ®−îc x©y dùng trong thÕ giíi hÖ to¹ ®é repeatSTRUE # repeat or stretch? Theo mÆc ®Þnh , tÊt c¶ c¸c vËt thÓ ®−îc x©y dùng tõ gèc cña hÖ to¹ ®é repeatT TRUE } VRML sö dông hÖ to¹ ®é thuËn .hÖ to¹ ®é §Ò C¸c } Xem code Ch¹y vÝ dô §¬n vÞ chuÈn ®o chÒu dµi vµ kho¶ng c¸ch trong VRML lµ m. C¸c Texture cã thÓ lµ mét URL ®Çy ®ñ hoÆc chØ lµ mét URLt−¬ng ®èi ®¬n Gãc lµ radian. gi¶n nh− sö dông ë trªn. Cã ba kiÓu nót texture lµ : ImageTexture, MovieTexture and PixelTexture Mét vßng quay lµ 2π radian. Xem code Ch¹y vÝ dô 360 lµ 2π radian, kho¶ng 6.28 radian, 90 lµ π/2 radian, kho¶ng 1.57 radian. (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 ChuyÓn ®æi mét hÖ to¹ ®é Tr−êng children Mét nót transform t¹o ra mét hÖ to¹ Nhãm c¸c nót Transform t¹o ra Tr−êng children bao gåm mét danh s¸ch mét hay nhiÒu nót ®é cã: mét nhãm víi hª to¹ ®é cña chÝnh nã Positioned :gèc • rotation – h−íng Transform { . . . Rotated :gãc quay • scale – kÝch cì children [ Scaled :tû lÖ • translation – vÞ trÝ Shape { . . . } Liªn hÖ víi hÖ to¹ ®é cha cña nã • children – c¸c vËt thË t¹o Shape { . . . } C¸c vËt thÓ ®−îc x©y dùng trong hÖ Transform { Transform { . . . } . . . ] } to¹ ®é míi ®−îc ®Þnh vÞ ,quay vµ tû lÖ translation . . . cïng víi nã. rotation . . . scale . . . children [ . . . ] } (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Nót transform Nót transform Tr−êng Translation ®Þnh vÞ hÖ to¹ Tr−êng Rotation ®Þnh h−íng hÖ to¹ ®é Co gi·n , xoay vµ dÞch mét hÖ to¹ ®é, c¸i nµy sau c¸i kia ®é bëi X,Y vµ Z quay quoanh mét c¹nh bëi mét gãc Transform { Transform { # X Y Z quay translation 2.0 0.0 0.0 translation 2.0 0.0 0.0 children • Gãc th−êng ®−îc ®u b»ng ®¬n rotation 0.0 0.0 1.0 0.52 [...]} vÞ radian scale 0.5 0.5 0.5 Tr−êng Scale ®Ó co hay gi¶n mét • radian = ®é/ 180.0 * 3.141 children [ . . . ] } hÖ to¹ ®é dùa vµu hÖ sè tû lÖ ë Transform { # X Y Z Angle C¸c thao t¸c ®−îc thùc hiÖn tõ d−íi lªn bottom-up: c¸c trôc X, Y, vµ Z rotation 0.0 0.0 1.0 0.52 Tr−êng children ®−îc co gi·n ,xoay råi sau ®ã míi dÞch Transform { # X Y Z scale 0.5 children [ . . . ] } Thø tù gi÷a c¸c tr−êng ®−îc Ên ®Þnh, ®éc lËp víi trËt tù cña c¸c tr−êng 0.5 0.5 children [ . . . ] } Xem code Ch¹y vÝ dô (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 3
- nót Appearance nót Material C¸c vËt thÓ gèc cã mµu ph¸t ra tõ bÒ Mét nót Appearance miªu t¶ toµn Mét nót Material ®iÒu khiÓn c¸c thuéc tÝnh vÒ chÊt liÖu cña vËt thÓ ngoµi lµ mµu tr¾ng bé h×nh d¹ng cña vËt thÓ • diffuseColor – mµu bãng chÝnh B¹n cã thÓ ®iÒu khiÓn mµu cña mét • emissiveColor – mµu ph¸t chÝnh • Tr−êng material gåm c¸c vËt thÓ: thuéc tÝnh nh− color, • transparency – Trong suèt hay kh«ng transparency, etc. Shape { • Mµu bãng Shape { appearance Appearance { • Mµu ph¸t ra material Material { • TÝnh trong suèt appearance Appearance { diffuseColor 0.8 0.8 0.8 • TÝnh kh«ng chiÕu s¸ng material . . . } emissiveColor 0.0 0.0 0.0 • C−êng ®é ¸nh s¸ng bao geometry . . . } transparency 0.0 } quanh } geometry . . . } (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Nót material B¶ng mµu th−êng dïng Nót Material còng cã thÓ ®iÒu khiÓn tÝnh chiÕu s¸ng cña mét vËt thÓ ambient diffuse specular • specularColor – ®iÓm cã mµu næi bËt nhÊt M« t¶ shininess Intensity Color Color • shininess – kÝch cë chç næi bËt nhÊt • ambientIntensity – hiªu øng ¸nh s¸ng xung quanh Aluminum 0.30 0.30 0.30 0.50 0.70 0.70 0.80 0.10 Shape { Copper 0.26 0.30 0.11 0.00 0.75 0.33 0.00 0.08 appearance Appearance { Gold 0.40 0.22 0.15 0.00 0.71 0.70 0.56 0.16 material Material { specularColor 0.71 0.70 0.56 Metalic Purple 0.17 0.10 0.03 0.22 0.64 0.00 0.98 0.20 shininess 0.16 Metalic Red 0.15 0.27 0.00 0.00 0.61 0.13 0.18 0.20 ambientIntensity 0.4 } } Plastic Blue 0.10 0.20 0.20 0.71 0.83 0.83 0.83 0.12 geometry . . . } Xem code Ch¹y vÝ dô (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 nót Group KÕt nèi tíi mét vÞ trÝ kh¸c Th«ng th−êng chóng ta cÈn nhãm c¸c B¹n cã thÓ nhãm c¸c vËt thÓ l¹i víi Còng nh− trong trang Web , siªu liªn kÕt còng s½n cã trong VRML. ®èi t−îng l¹i víi nhau. VRML dïng nót nhau ®Ó t¹o thµnh mét vËt thÓ phøc Cã thÓ kÕt nèi tíi c¸c kiÓu d÷ liÖu hîp lÖ , bao gåm c¸c trang VRML Group ®Ó thùc hiÖn ®iÒu nµy t¹p . kh¸c, c¸c trang HTML vµ c¸c øng dông CGI . Nót Group cã thÓ cã c¸c nót con. VRML cã nhiÒu nót group bao gåm VÞ trÝ (x, y, z) cña con trá cã thÓ ®−îc truyÒn tíi URL, chØ thùc sù cã Ých víi Cã thÓ chÝnh c¸c nót con lµ c¸c nót Group { . . . } c¸c øng dông CGI. group . Switch { . . . } Cã c¸c kiÓu nót group sau: Transform { . . . } Billboard { . . . } Transform Group LOD Anchor { . . . } Anchor Inline Inline { . . . } Collision Switch Billboard Xem code Chaþ vÝ dô (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 4
- C¸c nót Group-Switch-Transform Nót Anchor vµ Inline Nót Group t¹o ra c¸c nót c¬ b¶n Nót Transform t¹o ra mét nhãm dùa Nót Anchor t¹o ra mét nhãm mµ ho¹t Nót Inline t¹o ra mét nhãm ®Æc biÖt tõ kh¸c trªn chÝnh hÖ to¹ ®é cña nã ®éng nh− kiÓu cã thÓ kÝch chuét ®−îc néi dung cña mét file VRML kh¸c Mçi nót child trong group lµ ®−îc Mçi nót child lµ ®−îc hiÓn thÞ ChØ nót child lµ ®−îc hiÓn thÞ Nót con ®äc tõ file ®−îc chän bëi hiÓn thÞ Transform { URL KÝch chuét vµo nót child theo sau Group { children [ . . . ] } translation 0.0 0.0 0.0 bëi mét URL Mçi nót child lµ ®−îc hiÓn thÞ Nót nhãm Switch t¹o ra mét nhãm cã rotation 0.0 1.0 0.0 0.0 thÓ chuyÓn cho nhau. Tr−êng description ®Æt tªn cho nót Inline { url "table.wrl" } scale 1.0 1.0 1.0 children [ . . . ] } anchor ChØ cã mét nót child group is Inline { trong nhãm lµ ®−îc hiÓn thÞ Nót nhãm Billboard t¹o ra mét nhãm víi hÖ to¹®é ®Æc biÖt url "table.wrl" } . . . B¹n chän nót child nµo Anchor { Transform { • Mçi nót child ®−îc hiÓn thÞ • Nót con ®−îc ®¸nh sè t−êng displayed url "stairwy.wrl" translation -0.95 0.0 0.0 minh tõ 0 • HÖ to¹ ®é trë l¹i mÆt xem description "Twisty Stairs" rotation 0.0 1.0 0.0 3.14 • A -1 kh«ng chän nót con nµo Billboard { children [ . . . ] } children [ Inline { url "chair.wrl" } ] } Switch { whichChoice 0 choice [ . . . ] axisOfRotation 0.0 1.0 0.0 } Xem code Ch¹y vÝ dô Xem code Ch¹y vÝ dô Xem code Chaþ vÝ dô children [ . . . ] } (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 §Æt tªn Tõ khãa use NÕu nhiÒu vËt thÓ gièng nhau vÒ c¸c Có ph¸p DEF t¹o ra tªn cho mét Tõ kho¸ USE cho phÐp sö dông USE b¾t buéc ph¶i lµ chö hoa yÕu tè h×nh häc hay h×nh d¹ng , b¹n nót mét nót ®· ®−îc ®Æt tªn tr−íc Sö dông l¹i nót ®· ®−îc ®Æt tªn ph¶i dïng nhiÒu nót gièng hÖt nhau Shape { Shape { gäi lµ mét biÕn hay mét thÓ hiÖn Thay vµo ®ã , ®Þnh nghÜa mét tªn appearance Appearance { cho nót t×m thÊy ®Çu tiªn appearance Appearance { Mét nót ®· ®−îc ®Æt tªn cã thÓ cã material Sau ®ã, sö dông tªn ®Êy ®Ó chia sÎ material mét vµi thÓ hiÖn DEF RedColor cho nót t−¬ng tù ë trong ng÷ c¶nh USE RedColor } Mçi thÓ hiÖn chia sÎ cïng mét míi Material { diffuseColor 1.0 0.0 0.0 geometry . . . } miªu t¶ vÒ nót ®Êy } } geometry . . . } ChØ cã thÓ cã thÓ hiªn mµ tªn DEF b¾t buéc ph¶i ký tù hoa Xem code Ch¹y vÝ dô cña nót ®· ®−îc ®Þnh nghÜa Cã thÓ ®Æt tªn cho mét nót nµo ®Êy trong cïng mét file Tªn cã thÓ lµ hÇu hÕt c¸c chuçi ký tù vµ sè Trong mét file tªn ph¶i lµ duy nhÊt (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 −u ®iÓm Giíi thiÖu ho¹t c¶nh §Æt tªn vµ sö dông nót: C¸c nót nh− Billboard vµ Anchor cã c¸c hµnh ®éng x©y dùng s½n L−u nh÷ng g× ®· ®¸nh vµo B¹n cã thÓ t¹o ra hµnh ®éng cña riªng b¹n nh− lµm cho c¸c vËt thÓ cã thÓ di chuyÓn,xoay, co gi·n vµ h¬n thÕ n÷a Gi¶m kÝch th−íc file Chóng ta cÇn mét ph−¬ng thøc ®Ó kÝch , thêi gian ho¸, vµ ®¸p øng mét Cho phÐp thay ®æi nhanh chãng c¸c vËt thÓ cã cïng thuéc tÝnh chuçi c¸c sù kiÖn theo mét trËt tù ®Ó mét sù t−¬ng t¸c tèt h¬n gi÷a ng−êi dïng vµ thÕ giíi bªn ngoµi T¨ng tèc ®é cho qu¸ tr×nh xö lý trªn tr×nh duyÖt HÇu hÕt c¸c nót ®Òu cã thÓ lµ thµnh phÇn trong mét dßng ho¹t c¶nh Tªn còng cÇn thiÕt cho c¶nh ®éng ... Nót ho¹t ®éng nh− c¸c phÇn ®iÖn tö ¶o Nót cã thÓ göi vµ nhËn c¸c sù kiÖn C¸c ®−êng d©y nèi c¸c nót l¹i víi nhau Mét sù kiÖn lµ mét th«ng b¸o ®−îc göi gi÷a c¸c nót Mét gi¸ trÞ d÷ liÖu (gièng nh− sù dÞch chuyÓn) Thêi gian hoµn thµnh (Khi sù kiÖn ®−îc chøng nhËn lµ ®· ®−îc göi) (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 5
- Thªm c¸c sù kiÖn Cµi ®Æt ho¹t c¶nh §Ó quay mét vËt thÓ: §Ó cµi ®Æt mét dßng ho¹t c¶nh , b¹n cÇn ba thø : • Nèi mét nót mµ göi sù kiÖn rotation víi tr−êng rotation cña nót Mét nót göi sù kiÖn Transform Nót ph¶i ®−îc ®Æt tªn víi c©u lÖnh DEF §Ó lµm mét vËt thÓ nhÊp nh¸y: Mét nót nhËn sù kiÖn • Nèi nót göi sù kiÖn color víii tr−êng diffuseColor cña nót Nót ph¶i ®−îc ®Æt tªn víi c©u lÖnh DEF Material Mét ®−êng d©y kÕt nèichóng l¹i Mçi nót cã c¸c tr−êng , th«ng tin vµo vµ th«ng tin cÇn cã: field: Mét gi¸ trÞ d÷ liÖu ®−îc l−u trö eventIn: ®Çu vµo eventOut: ®Çu ra Mét tr−êng exposedField viÕt gän cho mét gi¸ trÞ d÷ liÖu, ®Çu vµo vµ ®Çu ra (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 C¸c vÝ dô Vµo- ra Tõ khãa route Nót OrientationInterpolator Nót Transform cã c¸c sù kiÖn C©u lÖnh ROUTE cho phÐp kÕt nèi C¸c quy −íc vÒ ®Æt tªn hai nót l¹i víi nhau : cã sù kiÖn ra : vµo: HÇu hÕt c¸c nót ®Òu cã exposedFields Tªn nót göi vµ sù kiÖn ra NÕu tr−êng exposed tªn lµ xxx, th×: value_changed ®−a ra gi¸ trÞ set_translation Tªn nót nhËn vµ s− kiÖn vµu • set_xxx lµ mét sù kiÖn vµo gãc xoay set_rotation ROUTE ®−îc g¸n cho tr−êng set_scale MySender.rotation_changed Nót PositionInterpolator cã TO MyReceiver.set_rotation • xxx_changed lµ sù kiÖn ra sù kiÖn ra : ®−îc göi ®i khi tr−êng ®ã thay Nót Material cã c¸c sù kiÖn vµu: ROUTE vµ TO b¾t buéc ph¶i lµ ®æi value_changed ®−a ra vÞ trÝ set_diffuseColor ký tù hoa • C¸c tiÕp ng÷ set_ vµ _changed Nót TimeSensor cã sù kiÖn ra: set_emissiveColor lµ tuú chän nh−ng nªn cã ®Ó ph©n biÖt time ®−a ra thêi gian set_transparency Nót Transform cã: Tr−êng rotation • Sù kiÖn vµo set_rotation • Sù kiÖn ra rotation_changed (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Ho¹t c¶nh ®iÒu khiÓn thêi gian Ho¹t c¶nh cho phÐp thay ®æi qua thêi gian: Nót TimeSensor cho phÐp b¹n ®iÒu khiÓn thêi gian b¾t ®Çu vµ kÕt thóc • VÞ trÝ – mét « t« ®ang ®i Nót c¶m øng t¹o sù kiÖn thêi gian khi nã ®ang ch¹y • H−íng - mét m¸y bay ®ang l−în §Ó kÝch ho¹t , dÉn c¸c sù kiÖn thêi gian tíi c¸c nót kh¸c • Mµu s¾c – ®æi mïa Nót TimeSensor t¹o ra hai sù kiÖn thêi gian lµ absolute and fractional Ho¹t c¶nh b¾t buéc ®iÒu khiÓn qua thêi gian: Sù kiÖn thêi gian Absolute t¹o ra thêi gian thùc • Khi nµo th× b¾t ®Çu vµ dõng • Thêi gian tuyÖt ®èi ®−îc ®u b»ng gi©y tõ 12:00h mång 1 th¸ng 1 • Møc ®é nhanh chËm n¨m 1970! • RÊt cã Ých cho viÖc triÖu gäi mét sù kiÖn ë thêi gian cô thÓ (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 6
- sö dông thêi gian ph©n ®o¹n Nót timesensor Sù kiÖn thêi gian ph©n ®o¹n nhËn c¸c gi¸ trÞ sè tõ 0.0 tíi 1.0 Nót TimeSensor t¹o ra c¸c sù kiÖn §Ó t¹o ra bé thêi gian ch¹y liªn tôc: dùa vµo thêi gian loop TRUE Khi nót c¶m øng thêi gian b¾t ®Çu , ®Çu ra cña nã lµ 0.0 Thêi gian b¾t ®Çu_ startTime vµ stopTime
- Colorinterpolator-scalarinterpotator OrientationInterpolator PositionInterpolator ColorInterpolator ScalarInterpolator Nót OrientationInterpolator m« Nót PositionInterpolator m« t¶ Nót ColorInterpolator m« t¶ ®−êng Nót ScalarInterpolator m« t¶ t¶ ®−êng dÉn h−íng ®−êng dÉn vÞ trÝ hay tû lÖ dÉn mµu s¾c ®−êng dÉn v« h−íng • key – kho¸ thêi gian ph©n • key – kho¸ thêi • key – kho¸ thêi gian ph©n • key – kho¸ thêi gian ph©n ®o¹n gian ph©n ®u¹n ®o¹n ®o¹n • keyValue – kho¸ vÒ xoay • keyValue – kho¸ (gåm c¹nh vµ gãc) vÞ trÝ (hoÆc tû lÖ) • keyValue – kho¸ mµu • keyValue – kho¸ v« OrientationInterpolator { key [ • PositionInterpolator { (®á,xanh d−¬ng,xanh da trêi) h−íng (dïng cho bÊt cø 0.0, . . . ] keyValue [ 0.0 1.0 0.0 key [ 0.0, . . . ] keyValue [ ColorInterpolator { key [ 0.0, . . . ] vËt thÓ nµo) 0.0, . . . ] } 0.0 0.0 0.0, . . . ] } keyValue [ 1.0 1.0 0.0, . . . ] } ScalarInterpolator { key [ 0.0, . . Th−êng göi gi¸ trÞ vÒ gãc xoay • Th−êng göi gi¸ trÞ vÞ trÝ vµo Th−êng göi vµu sù kiÖn ®Çu vµo . ] keyValue [ 4.5, . . . ] } vµo sù kiÖn set_rotation cña nót sù kiÖn set_scale cña nót set_diffuseColor hay Th−êng göi vµo sù kiÖn Transform Transform set_emissiveColor cña nót set_transparency cña nót Material Material Xem code Ch¹y vÝ dô Xem code Ch¹y vÝ dô (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 nót Sensor nót Sensor Cã 7 kiÓu nót sensor . Nót ProximitySensor ph¸t hiÖn ra vÞ trÝ quan s¸t gÇn nhÊt Nót sensor dß c¸c hµnh ®éng cña ng−êi dïng vµ ph¸t ra mét Nót TouchSensor ph¸t hiÖn sù kiÖn kÝch chuét sù kiªn. Nót TimeSensor lµ bé ®Õm thêi gian B¹n cã thÓ liªn kÕt c¸c sù kiÖn nµy tíi c¸c nót kh¸c ®Ó t¹o ra TÊt c¶ c¸c nót CylinderSensor, PlaneSensor and chu kú ®¬n gåm cã nguyªn nh©n_kÕt qu¶. SphereSensor ph¸t hiÖn tr¹ng th¸i kÐo c¸c vËt thÓ. Bèn bµi cuèi cïng trong phÇn “VRML Resources | Example Nót VisibilitySensor nhËn biÕt mét ®èi t−îng lµ h÷u h×nh ®èi VRML Worlds” cña Website lµ nh−ng vÝ dô hay vÒ c¸c nót víi ng−êi dïng sensor vµ liªn kÕt víi c¸c sù kiÖn. (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 nót Sensor viewer Dïng visibilitysensor vµ proximitysensor Motivation Hai nót VisibilitySensor vµ ProximitySensor c¶m biÕn vïng vËt thÓ C¶m øng vÞ trÝ ng−êi dïng cho phÐp kÝch ho¹t c¸c ho¹t c¶nh d¹ng hép • Khi mét vïng h÷u h×nh ®èi víi ng−êi dïng • center – t©m vïng • Khi ng−êi dïng ë trong mét vïng nµo ®ã • size – kÝch th−íc vïng • Khi ng−êi dïng va ch¹m víi mét vËt thÓ nµo ®ã LOD vµ Billboard lµ c¸c nót ®Æc biÖt cã c¸c ®¸p øng víi viewer sensors C¶ hai nót cã ®Çu ra gièng nhau : ®−îc x©y dùng s¨n • Sù kiÖn enterTime – göi thêi gian vµo vïng vµo hay lóc h÷u h×nh Cã 3 kiÓu nót viewer sensor: • Sù kiÖn exitTime – göi thêi gian vµo vïng ra hay lóc kh«ng h÷u • Nót VisibilitySensor c¶m biÕn nÕu ng−êi dïng cã thÓ thÊy mét h×nh vïng nµo ®ã a region • Nót ProximitySensor c¶m biÕn khi ng−êi dïng ®Õn ph¹m vi xung • Sù kiÖn isActive – göi true ë vïng vµo, false ë vïng ra quanh vËt thÓ • Nót Collision c¶m biÕn xung ®ét gióp ®iÒu khiÓn vµ ph¸t hiÖn xung ®ét (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 8
- Nót VisibilitySensor nót ProximitySensor Nót VisibilitySensor c¶m biÕn nÕu ng−êi dïng nh×n thÊy hoÆc ngõng Nót ProximitySensor c¶m biÕn khi ng−êi dïng vµo/ rêi khái mét vïng nµo ®ã quan s¸t mét vïng nµo ®ã • center vµ size – kÝch th−íc vµ vÞ trÝ cña vïng • enterTime vµ exitTime –göi thêi gian vµo vïng vµo/vïng ra • center vµ size –t©m vµ kÝch th−íc cña vïng • isActive – göi gi¸ trÞ true/false nÕu vµo vïng vµo/ vïng ra • enterTime vµ exitTime – göi thêi gian vµo\ra DEF ProxSense ProximitySensor { center 0.0 0.0 0.0 size 14.0 14.0 14.0 } ROUTE ProxSense.enterTime TO Clock.set_startTime • isActive –göi gi¸ trÞ true/false vµo vïng vµo\vïng ra ProximitySensor DEF VisSense VisibilitySensor { center 0.0 0.0 0.0 size 14.0 14.0 14.0 • Nót ProximitySensor c¶m biÕn khi ng−êi dïng ®ang ë trong } ROUTE VisSense.enterTime TO Clock.set_startTime vïng • position vµ orientation –göi vÞ trÝ vµ h−íng khi ng−êi dïng ®ang ë trong vïng • DEF ProxSense ProximitySensor { . . . } ROUTE • ProxSense.position_changed TO PetRobotFollower.set_translation Xem code Ch¹y vÝ dô (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 nót Collision C¸c nót sensor hµnh ®éng Nót Collision c¶m biÕn ®−îc khi tÇm Tèi −u ho¸ viÖc ph¸t hiÖn xung ®ét quan s¸t cña ng−êi dïng v−íng c¸c vËt Cã 4 nót sensor hµnh ®éng C¶m biÕn c¸c vËt thÓ Sù kiÖn collision lu«n ®−îc kÝch ho¹t thÓ theo ngÇm ®Þnh chÝnh: TÊt c¶ c¸c c¶m biÕn hµnh collide – cho phÐp/kh«ng cho T¾t nã bÊt cø khi nµu cã thÓ! ®éng c¶m biÕn ®−îc tÊt c¶ phÐp c¶m biÕn Tuy nhiªn, mét khi nót collision cha • TouchSensor c¶m biÕn khi proxy – vËt thÓ ®¬n gi¶n ®−îc t¾t th× nót child kh«ng thÓ bËt nã trë ch¹m vµo vËt thÓ c¸c vËt thÓ cïng nhãm l¹i! c¶m biÕn thay cho c¸c nót con KÕt qu¶ ph¸t hiÖn xung ®ét lµ tõ ng−êi C¶m biÕn ®−îc kÝch ho¹t khi dïng va ch¹m víi mét vËt thÓ chø • SphereSensor khi kÐo chuét children – c¸c nót con ®−îc c¶m kh«ng ph¶i lµ vËt thÓ va ch¹m víi • CylinderSensor khi kÐo khi con trá cña ng−êi dïng biÕn ng−êi dïng collideTime – göi thêi gian khi Sö dông nhiÒu nót sensor chuét ch¹m ph¶i vËt thÓ ®−îc c¶m ng−êi dïng ch¹m vµo vËt thÓ Mét sè nót sensor cã thÓ c¶m biÕn biÕn DEF Collide Collision { collide TRUE cïng mét lóc • PlaneSensor khi kÐo chuét proxy Shape { geometry Box { . . . } } B¹n cã thÓ t¹o ra nhiÒu Nót Anchor lµ nót c¶m biÕn children [ . . . ] } ROUTE nótvisibility, proximity, and Xem code Ch¹y vÝ dô Collide.collideTime TO collision sensor hµnh ®éng cã môc ®Ých ®Æc biÖt OuchSound.set_startTime C¸c vïng c¶m biÕn cã thÓ ch«ng mµ c¸c ®¸p øng ®−îc x©y dùng lªn nhau Xem code Ch¹y vÝ dô NÕu nhiÒu nót sensor ®−îc kÝch s½n ho¹t, chóng sÏ thùc hiÖn (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Touchsensor vµ spheresensor Cylindersensor-planesensor Nót TouchSensor c¶m biÕn sù va Nót SphereSensor c¶m biÕn sù Nót CylinderSensor nhËn biÕt Nót PlaneSensor nhËn biÕt con trá ch¹m cña con trá dich chuyÓn con trá t¹o ra sù con trá ®−îc rª vµ lµm cho vËt ®−îc rª vµ lµm dÞch chuyÓn vËt thÓ thÓ xoay quanh h×nh trô trªn mét mÆt ph¼ng • isOver – göi gi¸ trÞ true/false xoayquanh h×nh cÇu khi con trá ®ang ë trong hay • isActive – göi gi¸ trÞ • isActive – göi c¸c gi¸ trÞ • isActive –göi c¸c gi¸ trÞ true/false khi chuét ®−îc ë ngoµi vïng vËt thÓ true/false khi chuét ®−îc nhÊn hay th¶ true/false khi con chuét nhÊn hay th¶ • isActive – göi gi¸ trÞ ®−îc nhÊn hay th¶ • translation_changed – lµm true/false khi chuét ®−îc • rotation_changed – lµm cho vËt thÓ dÞch chuyÓn khi nhÊn hay th¶ • rotation_changed - ®−a cho vËt thÓ quay khi kÐo rª chuét • touchTime –®−a ra thêi gian ra sù quay khi rª con Transform { children [ DEF Transform { children [ DEF khi chuét ®−îc th¶ chuét Rotator CylinderSensor { } Mover PlaneSensor { } DEF DEF RotateMe Transform { . MoveMe Transform { . . . } ] } Transform { children [ DEF Transform { children [ DEF . . } ] } ROUTE ROUTE Touched TouchSensor { } Rotator SphereSensor { } Mover.translation_changed TO Shape { . . . } . . . ] } DEF RotateMe Transform { . Rotator.rotation_changed MoveMe.set_translation TO RotateMe.set_rotation Xem code Ch¹y vÝ dô . . } ] } ROUTE Rotator.rotation_changed Xem code Ch¹y vÝ dô Xem code Ch¹y vÝ dô TO RotateMe.set_rotation (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 9
- Sö dông nhiÒu nót sensor vÝ dô sö dông c¸c nót sensor NhiÒu nót sensor cã thÓ c¶m biÕn cïng mét vËt thÓ nh−ng. . . #Clock to drive animations • NÕu c¸c nót sensor ë trong cïng mét nhãm : DEF Clock TimeSensor { cycleInterval 10.0 loop TRUE } • TÊt c¶ ®Òu cã thÓ ®¸p øng c¸c sù kiÖn # Colour changes for sphere (red -> green -> blue -> red) • NÕu c¸c nót sensors cã ®é s©u kh¸c nhau trong cÊu tróc c©y cña DEF NewColour ColorInterpolator { key [0.0, 0.33, 0.66, 1.0 ] nót : keyValue [1.0 0.2 0.2, 0.2 1.0 0.2, 0.2 0.2 1.0, 1.0 0.2 0.2 ] } • Nót sensor s©u nhÊt sÏ ®¸p øng . . . (Above is Grouped with the object we’re changing) • C¸c nót kh¸c kh«ng ®¸p øng # use clock to run a ColorInterpolator, generating smoothly varying colour ROUTE Clock.fraction_changed TO NewColour.set_fraction # use varying colour value to feed material's diffuseColor field ROUTE NewColour.value_changed TO SphereColour.set_diffuseColor (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 nót Script c¸c ng«n ng÷ kÞch b¶n NhiÒu hµnh ®éng qu¸ phøc t¹p ®èi víi c¸c nót ho¹t c¶nh Nót Script chän mét ch−¬ng tr×nh §Þnh nghÜa giao tiÕp c¸c • TÝnh to¸n ®−êng ®i (vÝ dô lùc hÊp dÉn) kÞch b¶n ®Ó ch¹y: ch−¬ng tr×nh kÞch b¶n øng • Gi¶i thuËt vÒ vËt thÓ (eg. fractals) url – chän ch−¬ng tr×nh kÞch dông • C¸c m«i tr−êng cÇn sù c«ng t¸c (vÝ dô game) b¶n Nót Script còng khai b¸o giao B¹n cã thÓ t¹o ra c¸c nót sensors, interpolators, v©n v©n , b»ng c¸nh sö dông DEF Bouncer Script { tiÕp ch−¬ng tr×nh kÞch b¶n c¸c ch−¬ng tr×nh kÞch b¶n viÕt b»ng c¸c ng«n ngö url "bouncer.class" or... • field, eventIn, vµ • Java – ng«n ngö lËp tr×nh rÊt m¹nh url "bouncer.js" or... eventOut – lµ c¸c thao • JavaScript – ng«n ngö kÞch b¶n dÔ häc t¸c xuÊt nhËp • VRMLscript – gièng JavaScript url "javascript: ..." or... • Mçi c¸i cã mét tªn vµ kiÓu Ng«n ng÷ VRML kh«ng b¾t buéc ph¶i hç trî c¸c ng«n ng÷ kÞch b¶n url "vrmlscript: ..." } d÷ liÖu • HÇu hÕt c¸c tr×nh duyªt ®Òu hâ trî JavaScript vµ • C¸c tr−êng cã mét gi¸ trÞ • NhiÒu tr×nh duyªt hç trî Java Xem code Ch¹y vÝ dô khëi ®Çu VRMLScript = JavaScript = ECMAScript DEF Bouncer Script { field • JavaScript kh«ng gièng Java SFFloat bounceHeight 3.0 • VRMLScript lµ phÇn mÒm cña Cosmo Software hç trî JavaScript eventIn SFFloat set_fraction • C¸c ®Æc t¶ kü thuËt cña ISO VRML gäi lµ ECMAScript, phiªn b¶n cã hç eventOut SFVec3f tr¬ JavaScript value_changed } (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Java Java class So víi c¸c ng«n ng÷ nh− Khai b¸o giao tiÕp ch−¬ng NhËp c¸c package cho líp Java JavaScript/VRMLscript, Java cã tr×nh kÞch b¶n File cña ch−¬ng tr×nh kÞch b¶nph¶i import c¸c package cña VRML : • §−îc cung cÊp c¸c c«ng ty ph©n phèi tr×nh duyÖt VRML kh¶ n¨ng: Víi ch−¬ng tr×nh kÞch b¶n viÕt import vrml.*; • M« ®un ch−¬ng tr×nh tèt b»ng ng«n ng÷ Java t¹o ra mét import vrml.field.*; h¬n file class trong tr−êng url cñanót import vrml.node.*; • CÊu tróc d÷ liÖu tèt h¬n Script T¹o ra c¸c file Java class C¸c ch−¬ng tr×nh kÞch b¶n ph¶i ®Þnh nghÜa mét líp cã tÝnh public kÕ thõa tõ líp • Kh¶ n¨ng thùc hiÖn nhanh • file class ®−îc biªn dÞch Script h¬n b»ng ch−¬ng tr×nh kÞch public class bounce2 extends Script { . . . } • Truy cËp m¹ng b¶n Java • Ph−¬ng thøc tuú chän initialize ®−îc gäi khi script ®−îc t¶i DEF Bouncer Script { field • public void initialize ( ) { . . . } Víi nh÷ng c«ng viÖc ®¬n gi¶n th× • Qu¸ tr×nh khëi t¹o xÈy ra khi: sö dông JavaScript/VRMLscript SFFloat bounceHeight 3.0 • Nót Script ®−îc t¹o (th−êng khi tr×nh duyÖt n¹p thÕ giíi c¸c vËt thÓ) eventIn SFFloat • Ph−¬ng thøc shutdown ®−îc gäi ®Õn khi script th«i n¹p Nh÷ng ch−¬ng tr×nh phøc t¹p th× set_fraction eventOut • public void shutdown ( ) { . . . } dïng Java SFVec3f value_changed url • Shutdown xÈy ra : "bounce2.class" } • Nót Script bÞ xo¸ • Tr×nh duyÖt n¹p thÕ giíi míi (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 10
- Sù kiÖn -event Tr−êng eventout tõ java §¸p øng mét sù kiÖn Truy nhËp c¸c tr−êng tõ Java Truy nhËp tr−êng eventOuts tõ VÝ dô Java script • Ph−¬ng thøc Mçi tr−êng giao tiÕp cã thÓ ®−îc Java T¹o nót interpolator víiqu¶ bãng processEvent ®−îc gäi ®äc vµ viÕt Mçi giao tiÕp eventOut cã thÓ ®äc nÈy råi tÝnh träng lùc nh− chuyÓn mçi khi mét sù kiÖn nhËn • Gäi getField ®Ó ®äc vµ ghi ®éng nÈy ngang tõ d÷ liÖu ®Çu ®−îc , chuyÓn mét ®èi tr−êng cña ®èi t−îng • gäi getEventOut ®Ó ®äc vµo lµ thêi gian ph©n ®o¹n t−îng sù kiÖn chøa obj = (SFFloat) getField( tr−êng eventOut cña ®èi Nót cÇn: DEF Ball Transform { . • Gi¸ trÞ cña sù kiÖn "bounceHeight" ); t−îng . . } DEF Clock TimeSensor { . . • Thêi gian • Gäi getValue ®Ó lÊy gi¸ trÞ obj = (SFVec3f) . } DEF Bouncer Script { . . . } public void processEvent( cña tr−êng getEventOut( Event event ) { . . . } lastval = obj.getValue( ); "value_changed" ); • Gäi setValue ®Æt gi¸ trÞ • Gäi getValue ®äc gi¸ trÞ Xem code vrml cho mét tr−êng cuèi cïng ®−îc göi lastval = obj.getValue( ); obj.setValue( newval ); Xem code java • Gäi setValue ®Ó göi mét sù kiÖn obj.setValue( newval ); (c) SE/FIT/HUT 2002 (c) SE/FIT/HUT 2002 Lê Tấn Hùng CNTT- ĐHBK Hà nội Email: hunglt@it-hut.edu.vn Page 11
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Chương 3: Mô hình hóa dữ liệu mức quan niệm
89 p | 290 | 12
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Bài 2 - TS. Trần Mạnh Tuấn
22 p | 31 | 7
-
Bài giảng Mô hình hóa phần mềm: Tuần 1 - Nguyễn Thị Minh Tuyền
56 p | 29 | 7
-
Bài giảng Mô hình hóa phần mềm: Tuần 5 - Nguyễn Thị Minh Tuyền
36 p | 23 | 7
-
Bài giảng Phân tích và thiết kế hướng đối tượng: Mô hình hóa đối tượng - Đỗ Ngọc Như Loan
83 p | 66 | 7
-
Bài giảng OOAD - Chủ đề 5: Mô hình hóa cấu trúc
104 p | 150 | 7
-
Bài giảng Đồ họa máy tính: Mô hình hóa đối tượng - Ma Thị Châu (2017)
34 p | 36 | 6
-
Bài giảng Công nghệ phần mềm: Mô hình hóa hệ thống - PGS. TS. Phạm Ngọc Hùng
40 p | 19 | 6
-
Bài giảng Chương 3: Mô hình hóa dữ liệu (Quy tắc nghiệp vụ và mô hình hóa dữ liệu)
20 p | 136 | 5
-
Bài giảng Phần 2: Xây dựng hệ thống thông tin quản lý
95 p | 67 | 5
-
Bài giảng Phân tích hướng đối tượng UML: Bài 4 - Đỗ Thị Mai Hường
31 p | 12 | 4
-
Bài giảng Các phương pháp phân tích và thiết kế hệ thống hiện đại - Chương 2: Mô hình hóa hệ thống và ngôn ngữ UML
32 p | 34 | 4
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 5: Mô hình hóa chức năng sử dụng use case
17 p | 61 | 4
-
Bài giảng Bài 5: Công cụ mô hình hóa dữ liệu - Nguyễn Hoài Anh
33 p | 91 | 4
-
Bài giảng Phân tích hướng đối tượng UML: Bài 3 - Đỗ Thị Mai Hường
20 p | 12 | 3
-
Bài giảng Đồ họa hiện thực ảo: Bài 8 - Lê Tấn Hùng
11 p | 50 | 3
-
Bài giảng Phân tích hướng đối tượng UML: Bài 9 - Đỗ Thị Mai Hường
15 p | 8 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn