ນີ້ແມ່ນຄໍາສັ່ງ oconv ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
oconv - ສ້າງ octree ຈາກຄໍາອະທິບາຍ scene RADIANCE
ສະຫຼຸບສັງລວມ
oconv [ -i octree | -b xmin ymin zmin ຂະຫນາດ ][ -n objlim ][ -r ສູງສຸດ ][ -f ][ -w ][ - ] [
ການປ້ອນຂໍ້ມູນ .. ]
ລາຍລະອຽດ
Oconv ເພີ່ມຄໍາອະທິບາຍແຕ່ລະ scene ການປ້ອນຂໍ້ມູນ to octree ແລະສົ່ງຜົນໄດ້ຮັບກັບມາດຕະຖານ
ຜົນຜະລິດ. ແຕ່ລະ ການປ້ອນຂໍ້ມູນ ສາມາດເປັນຊື່ໄຟລ໌, ຫຼືຄໍາສັ່ງ (ລວມຢູ່ໃນວົງຢືມແລະ
ນຳໜ້າດ້ວຍ `!'). ເຊັ່ນດຽວກັນ, ການປ້ອນຂໍ້ມູນ octree ອາດຈະຖືກມອບໃຫ້ເປັນຄໍາສັ່ງກ່ອນໂດຍ a
`!'. ຖ້າພື້ນຜິວໃດນຶ່ງຈະບໍ່ພໍດີ octree, ຂໍ້ຄວາມຜິດພາດໄດ້ຖືກພິມອອກແລະ
ຍົກເລີກໂຄງການ. ຖ້າບໍ່ມີ octree ໄດ້ຖືກມອບໃຫ້, ໃຫມ່ແມ່ນຖືກສ້າງຂຶ້ນຂະຫນາດໃຫຍ່ພຽງພໍສໍາລັບທັງຫມົດຂອງ
ດ້ານ.
ໄດ້ -b ທາງເລືອກທີ່ອະນຸຍາດໃຫ້ຜູ້ໃຊ້ເພື່ອໃຫ້ cube bounding ສໍາລັບ scene ໄດ້, ເລີ່ມຕົ້ນທີ່ xmin ymin
zmin ແລະມີຄວາມຍາວດ້ານຂ້າງ ຂະຫນາດ. ຖ້າ cube ບໍ່ມີຫນ້າດິນທັງຫມົດ, an
ຜົນໄດ້ຮັບຄວາມຜິດພາດ. ໄດ້ -b ແລະ -i ທາງເລືອກແມ່ນສະເພາະເຊິ່ງກັນແລະກັນ.
ໄດ້ -n ທາງເລືອກລະບຸຂະຫນາດສູງສຸດທີ່ກໍານົດໄວ້ຫນ້າດິນສໍາລັບແຕ່ລະ voxel. ຕົວເລກໃຫຍ່ກວ່າ
ສົ່ງຜົນໃຫ້ການຜະລິດ octree ໄວຂຶ້ນ, ແຕ່ອາດຈະເຮັດໃຫ້ການສະແດງຜົນຊ້າລົງ. ອາດມີຄ່ານ້ອຍກວ່າ
ຫຼືອາດຈະບໍ່ຜະລິດການສະແດງຜົນໄວຂຶ້ນ, ເພາະວ່າຕົວເລກເລີ່ມຕົ້ນ (6) ແມ່ນຢູ່ໃກ້ກັບທີ່ດີທີ່ສຸດ
scenes ຫຼາຍທີ່ສຸດ.
ໄດ້ -r ທາງເລືອກກໍານົດຄວາມລະອຽດສູງສຸດ octree. ນີ້ຄວນຈະໃຫຍ່ກວ່າຫຼື
ເທົ່າກັບອັດຕາສ່ວນຂອງຂະຫນາດທີ່ໃຫຍ່ທີ່ສຸດແລະນ້ອຍທີ່ສຸດໃນ scene (ie. ຂະຫນາດຫນ້າດິນ
ຫຼືໄລຍະຫ່າງລະຫວ່າງຫນ້າດິນ). ຄ່າເລີ່ມຕົ້ນແມ່ນ 16384.
ໄດ້ -f ທາງເລືອກຜະລິດ octree frozen ປະກອບດ້ວຍຂໍ້ມູນ scene ທັງຫມົດ. ປົກກະຕິ,
ພຽງແຕ່ການອ້າງອີງເຖິງໄຟລ໌ scene ໄດ້ຖືກເກັບໄວ້ໃນ octree, ແລະການປ່ຽນແປງໄຟລ໌ເຫຼົ່ານັ້ນ
ອາດຈະເຮັດໃຫ້ຜົນໄດ້ຮັບບໍ່ຖືກຕ້ອງ. ທາງເລືອກ freeze ແມ່ນເປັນປະໂຫຍດເມື່ອຄວາມສົມບູນຂອງໄຟລ໌ octree
ແລະຄວາມໄວໃນການໂຫຼດແມ່ນມີຄວາມສໍາຄັນຫຼາຍກ່ວາຂະຫນາດຂອງມັນ, ຫຼືໃນເວລາທີ່ octree ຈະຖືກຍົກຍ້າຍ
ໄປຫາໄດເລກະທໍລີອື່ນ, ແລະໂດຍສະເພາະແມ່ນເປັນປະໂຫຍດສໍາລັບການສ້າງວັດຖຸຫ້ອງສະຫມຸດສໍາລັບ
"ຕົວຢ່າງ" ປະເພດເບື້ອງຕົ້ນ. ຖ້າ input octree ຖືກແຊ່ແຂງ, ຜົນຜະລິດກໍ່ຈະເປັນຄືກັນ.
ໄດ້ -w ທາງເລືອກສະກັດກັ້ນການເຕືອນ.
A hyphen ໂດຍຕົວຂອງມັນເອງ ('-') ບອກ oconv ເພື່ອອ່ານຂໍ້ມູນສາກຈາກການປ້ອນຂໍ້ມູນມາດຕະຖານຂອງມັນ. ນີ້
ຍັງຫມາຍຄວາມວ່າ -f ທາງເລືອກ.
ການປ່ຽນແປງໄຟລ໌ scene ເທົ່ານັ້ນທີ່ບໍ່ຕ້ອງການການຟື້ນຟູ octree ແມ່ນການດັດແກ້
ຕົວກໍານົດການທີ່ບໍ່ແມ່ນພື້ນຜິວ. ຖ້າຈຸດປະສານງານຂອງພື້ນຜິວມີການປ່ຽນແປງ, ຫຼື primitives ໃດ
ຖືກເພີ່ມ ຫຼືລຶບອອກ, oconv ຈະຕ້ອງຖືກແລ່ນອີກຄັ້ງ. ໂປຣແກຣມຈະຍົກເລີກດ້ວຍ "octree stale"
ຂໍ້ຄວາມຖ້າພວກເຂົາກວດພົບຄວາມບໍ່ສອດຄ່ອງທີ່ເປັນອັນຕະລາຍລະຫວ່າງ octree ແລະວັດສະດຸປ້ອນ
ໄຟລ໌.
ເຖິງແມ່ນວ່າຮູບແບບໄຟລ໌ octree ແມ່ນສອງ, ມັນຫມາຍຄວາມວ່າຈະເຄື່ອນທີ່ລະຫວ່າງເຄື່ອງຈັກ.
ຂໍ້ຈໍາກັດພຽງແຕ່ແມ່ນວ່າເຄື່ອງຈັກທີ່ມີຂະຫນາດຈໍານວນເຕັມທີ່ແຕກຕ່າງກັນຢ່າງຫຼວງຫຼາຍຈະບໍ່ເຮັດວຽກ
ຮ່ວມກັນ. ສໍາລັບຜົນໄດ້ຮັບທີ່ດີທີ່ສຸດ, ທາງເລືອກ -f ຄວນຖືກນໍາໃຊ້ຖ້າ octree ຖືກນໍາໃຊ້
ໃນສະພາບແວດລ້ອມທີ່ແຕກຕ່າງກັນ.
ທິດສະດີວິທະຍາ
ມີສີ່ປະເພດຄວາມຜິດພາດພື້ນຖານທີ່ລາຍງານໂດຍ oconv:
ການເຕືອນໄພ - ຄວາມຜິດພາດທີ່ກ່ຽວຂ້ອງກັບການປ້ອນຂໍ້ມູນທີ່ບໍ່ເປັນອັນຕະລາຍ
fatal - ຄວາມຜິດພາດທີ່ກ່ຽວຂ້ອງກັບການປ້ອນຂໍ້ມູນທີ່ບໍ່ສາມາດກູ້ຄືນໄດ້
system - ຄວາມຜິດພາດທີ່ກ່ຽວຂ້ອງກັບລະບົບ
ພາຍໃນ - ຂໍ້ຜິດພາດທີ່ຮ້າຍແຮງທີ່ກ່ຽວຂ້ອງກັບຂໍ້ຈໍາກັດຂອງໂປຼແກຼມ
ຄວາມສອດຄ່ອງ - ຄວາມຜິດພາດທີ່ເກີດຈາກໂຄງການ
ຄວາມຜິດພາດສ່ວນໃຫຍ່ເປັນການອະທິບາຍຕົນເອງ. ຢ່າງໃດກໍຕາມ, ຄວາມຜິດພາດພາຍໃນຕໍ່ໄປນີ້ຄວນຈະເປັນ
ກ່າວເຖິງ:
ໄຟລ໌ສາກຫຼາຍເກີນໄປ
ຫຼຸດຈໍານວນໄຟລ໌ສາກໂດຍການລວມພວກມັນ ຫຼືໃຊ້ການໂທໄປຫາ xform(1)
ພາຍໃນໄຟລ໌ເພື່ອສ້າງລໍາດັບຊັ້ນ.
ກໍານົດ overflow ໃນ addobject (id)
ຄວາມຜິດພາດນີ້ເກີດຂຶ້ນເມື່ອມີພື້ນຜິວຫຼາຍເກີນໄປຢູ່ໃກ້ກັນໃນສາກໃດໜຶ່ງ. ເຊັ່ນດຽວກັນ
ຫຼາຍດ້ານແມ່ນນອນຢູ່ດ້ານເທິງຂອງກັນແລະກັນ, ຫຼື cube bounding ແມ່ນ
ອັດຕາເງິນເຟີ້ຈາກວັດຖຸທີ່ມີຂະໜາດໃຫຍ່ ຫຼື ບໍ່ເໝາະສົມ -b ສະເພາະ. ຖ້າຫາກວ່າຫຼາຍຮ້ອຍຄົນ
ສາມຫຼ່ຽມມາຮ່ວມກັນຢູ່ທີ່ຈຸດສູງສຸດ, ມັນອາດຈະບໍ່ເປັນໄປໄດ້ທີ່ຈະສ້າງ
octree ຈາກວັດຖຸ. ນີ້ເກີດຂື້ນເລື້ອຍໆເມື່ອລະບົບ CAD inane ສ້າງ
ຮູບກົມໂດຍໃຊ້ tessellation Polar. ໂອກາດແມ່ນ, ດ້ານ "id" ແມ່ນຢູ່ໃກ້ກັບຫນຶ່ງໃນ
ທີ່ເຮັດໃຫ້ເກີດບັນຫາ.
ຕາຕະລາງ Hash ລົ້ນໃນ fullnode
ຄວາມຜິດພາດນີ້ແມ່ນເກີດຈາກພື້ນຜິວຫຼາຍເກີນໄປ. ຖ້າມັນເປັນໄປໄດ້ທີ່ຈະສ້າງ octree
ສໍາລັບ scene ທັງຫມົດ, ມັນຈະຕ້ອງເຮັດໃນຂັ້ນຕອນການນໍາໃຊ້ -i ທາງເລືອກ.
EXAMPLE
ເພື່ອເພີ່ມ book1, book2 ແລະ book3 ທີ່ປ່ຽນເປັນ octree ``scene.oct'':
oconv -i scene.oct book1 book2 '\!xform -rz 30 book3' > newscene.oct
ໃຊ້ oconv ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net