Паролингизни унутдингизми?
Login
Left, Right, Center Left, Center, Right Center, Left, Right



7-Dars JavaScript - VRML САХНАЛАРИНИ ДИНАМИК ЯРАТИШ

§ VRML-САХНАЛАРИНИ ДИНАМИК ЯРАТИШ.

JavaS тилининг ихчамлигини намоиш килиш учун, келинг энди VRML тилида динамик тарзда сахна ташкил этамиз. Эслатиб утамизки ,VRML вокеликни ветуал моделлаштириш каби кенгайтирилади. Яъни бу тил 3 улчовни сахналар яратиш тилидир. Оддий мисол келтирамиз кук куб. Бундан ташкари буни куриш учун сизнинг браузерингизга VRML нинг дастурий приставкаси керак булади. Киритилган скрипт VRML нинг браузерга кира олиш имкониятини аниклайди.
Скриптнинг дастлабки коди:
<html>
<head>
<script language = “JavaScript”>
<! - - hide
function vrml scene ( ) {
vrml = open ( “ , ”, display window”, “width = 500,
heidth = 400, status = yes, tool bar = yes, menu bar = yes ” );
// документни куйидаги маълумот учун олиш
vrml.document.open ( “x – world /x – vrml ”)
vr:=vrml.document;
//vrml сахнасини яратиш
vr.writeln ( “# vrml v1.0 ascii”);
// ёритиш
vr.writeln ( “separator {d:rectional{”);
vr.writeln ( “direction 3 –1 –2.5} ”);
// камера
vr.writeln ( “Perspective Camera { postion –8.6 2.1 5.6”);
vr.writeln ( “orientation –0.1352 –0.1233 1.1417”);
vr.writeln ( “focal Distance 10.84”);
// куб
vr.write ( “Separator { material { diffuse Color 001}”);
vr.write ( “transform { transform –2.4 –2 1 rotation 0 0.5 1.9}”);
vr.write ( “Cube {} }}”);
// документни ёпиш
vrml.document.close ( );
}
// - -
</script>
</head>
<body>
<form>
<input type = “button” value = “vrml on_the_fly” on click= “vrml scene ( )”>
</from>
</body>
</html>
Куриниб турибдики, скрипт матни олдинги мисолимиздагидай. Дастлаб янги дарча очилади. Сунгра унга маълумот чикариш учун document очамиз.
Унга мос буйрукни батафсил куриб чикамиз:
// куйидаги маълумотни чикариш учун document очиш
vrml.document.open ( “x – world /x – vrml ”);
Олдинги мисолларда бу кавс ичида хеч нарса курсатмаган эдик. У холда “x – world /x – vrml ” ёзув нимани англатади? Аслида олганда биз ушбу кулланма ёрдамида яратаётган document га MIME типини берамиз. Яъни биз бу билан браузерга бериладиган маълумотлар кандай типдалигини хабар киламиз. Агар биз уша жойда кавс ичида MIME нинг аник типини аниклаб олмаганимизда янги документга “ text/html” типи танланган булар эди. ( Бу эса html файллар учун MIME типининг узидир ).
Уч улчамли сахна яратиш учун биз vrml.document.write ( ) кулланмасини ташкил килишимиз керак. Лекин бу жуда узун булганлиги сабабли, биз оддий vr дан vrml.document узгарувчисини аниклаб оламиз. Ва сунгра vrml.document.write ( ) деб ёзиш урнига биз факат vr.write ( ) деб ёзамиз. Буни тамомлагандан сунг биз vrml тилида оддий кулланмаларни ёзишимиз мумкин. Биз бу ерда vrml сахнасининг элементарини тавсифини келтириб утирмаймиз. Улар билан танишишни истовчилар учун интернетда бир неча яхши маълумот манбалари бор. Vrml тилида оддий матн куйидагича булади:
#vrml v1.0 ascii
separator {
DirectionalLight { direction 3 –1 –2.5 }
Perspective Camera {
Position –8.6 2.1 5.6
Orientation –0.1352 –0.1233 1.1417
Focal Distance 10.84
}
separator {
Makrial {
Diffuse Color 001
}
Transform {
Tranlation –2.4 –21
Rotation 0 0.5 1.9
}
cube {}
}
}
Бу document.write буйруги ёрдамида экранга чикармокчи булган коднинг худди узи. Лекин оддий vrml файли билан юклаш мумкин булган имкониятни динамик тарзда сахна яратиш бемаъниликдир.

Share