机械英文翻译搅拌机文档格式.docx
- 文档编号:16227630
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:10
- 大小:29.41KB
机械英文翻译搅拌机文档格式.docx
《机械英文翻译搅拌机文档格式.docx》由会员分享,可在线阅读,更多相关《机械英文翻译搅拌机文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
ExtendingBlender:
DevelopmentofaHapticAuthoringTool
SheldonAndrews'
MohamadEid2,AtifAlamri2,andAbdulmotalebElSaddik2
MultimediaCommunicationsResearchLaboratory-MCRLab
SchoolofInformationTechnologyandEngineering-UniversityofOttawa
Ottawa,Ontario,KIN6N5,Canada
'
sandrO71]@site.uottawa.ca,2teid,atifWabed]@mcrlab.uottawa.Ca
Abstract-Inthispaper,wepresentourworktoextendawellknown3Dgraphicmodeler-Blender-tosupporthapticmodelingandrendering.TheextensiontoolisnamedHAMLAT(HapticApplicationMarkupLanguageAuthoringTool).WedescribethemodificationsandadditionstotheBlendersourcecodewhichhavebeenusedtocreateHAMLATFurthermore,wepresentanddiscussthedesigndecisionsusedwhendevelopingHAMLAT,andalsoanimplementation"
roadmap"
whichdescribesthechangestotheBlendersourcecode.Finally,weconclude
withdiscussionofourfuturedevelopmentandresearchavenues.
Keywords-Haptics,HAML,GraphicModelers,Blender,VirtualEnvironments.
I.INTRODUCTION
A.Motivation
Theincreasingadoptionofhapticmodalityinhuman-computerinteractionparadigmshasledtoahugedemandfornewtoolsthathelpnoviceuserstoauthorandedithapticapplications.Currently,thehapticapplicationdevelopmentprocessisatimeconsumingexperiencethatrequiresprogrammingexpertise.Thecomplexityofhapticapplicationsdevelopmentrisesfromthefactthatthehapticapplicationcomponents(suchasthehapticAPI,thedevice,thehapticrenderingalgorithms,etc.)needtointeractwiththegraphiccomponentsinordertoachievesynchronicity.
Additionally,thereisalackofapplicationportabilityastheapplicationistightlycoupledtoaspecificdevicethatnecessitatestheuseofitscorrespondingAPI.Therefore,deviceandAPIheterogeneityleadtothefragmentationanddisorientationofbothresearchersanddevelopers.Inviewofalltheseconsiderations,thereisaclearneedforanauthoringtoolthatcanbuildhapticapplicationswhilehidingprogrammingdetailsfromtheapplicationmodeler(suchasAPI,device,orvirtualmodel).
ThispaperdescribesthetechnicaldevelopmentoftheHapticApplicationMarkupLanguageAuthoringTool(HAMLAT).ItisintendedtoexplainthedesigndecisionsusedfordevelopingHAMLATandalsoprovidesanimplementation"
describingthesourcecodeoftheproject.
B.Blender
HAMLATisbasedontheBlender[1]softwaresuite,whichisanopen-source3Dmodelingpackagewitharichfeatureset.Ithasasophisticateduserinterfacewhichis
notedforitsefficiencyandflexibility,aswellasitssupportsformultiplefileformats,physicsengine,modemcomputergraphicrenderingandmanyotherfeatures.
BecauseofBlender'
sopenarchitectureandsupportivecommunitybase,itwasselectedastheplatformofchoicefordevelopmentofHAMLAT.Theopen-sourcenatureofBlendermeansHAMLATcaneasilyleverageitsexistingfunctionalityandfocusonintegratinghapticfeatureswhichmakeitacompletehapto-visualmodelingtool,sincedevelopinga3DmodelingplatformfromscratchrequiresconsiderabledevelopmenttimeandexpertiseinordertoreachthelevelofcodeintotheHAMLATsourcetree.
HAMLATbuildsonexistingBlendercomponents,suchastheuser-interfaceandeditingtools,byaddingnewcomponentswhichfocusontherepresentation,modification,andrenderingofhapticpropertiesofobjectsina3Dscene.ByusingBlenderasthebasisforHAMLAT,wehopetodevelopa3Dhapticmodelingtool
whichhasthematurityandfeaturesofBlendercombined
withthenoveltyofhapticrendering.
Atthetimeofwriting,HAMLATisbasedonBlenderversion2.43sourcecode.
C.ProjectGoals
Aspreviouslystated,theoverallgoalfortheHAMLATprojectistoproduceapolishedsoftwareapplicationwhichcombinesthefeaturesofamodemgraphicmodelingtoolwithhapticrenderingtechniques.HAMLAThasthe"
lookandfeel"
ofa3Dgraphicalmodelingpackage,butwiththeadditionoffeaturessuchashapticrenderingandhapticpropertydescriptors.Thisallowsartists,modelers,anddeveloperstogeneraterealistic3Dhapto-visualvirtualenvironments.
Ahigh-levelblockdiagramofHAMLATisshowninFigure1.Itillustratestheflowofdatainthehapticmodeling.HAMLATassiststhemodeler,orapplicationdeveloper,inbuildinghapto-visualapplicationswhichmaybestoredinadatabaseforlaterretrievalbyanotherhapticapplication.Byhapto-visualapplicationwerefertoanysoftwarewhichdisplaysa3Dscenebothvisuallyandhapticallytoauserinavirtualsetting.AnXMLfileformat,calledHAML[2],isusedtodescribethe3Dscenesandstorethehapto-visualenvironmentsbuiltbyamodelerforlaterplaybacktoanenduser.
Traditionally,buildinghapto-visualenvironmentshasrequiredastrongtechnicalandprogrammingbackground.Thetaskofhapticallyrenderinga3Dsceneistedious1108
sincehapticpropertiesmustbeassignedtoindividualobjectsinthesceneandcurrentlytherearefewhigh-leveltoolsforaccomplishingthistask.HAMLATbridgesthisgapbyintegratingintotheHAMLframeworkanddeliveringacompletesolutionfordevelopmentofhapto-visualapplicationsrequiringnoprogrammingknowledge.
Theremainderofthepaperisorganizedasfollows:
inSection2,wepresenttheproposedarchitectureextensionsanddiscussdesignconstraints.Section3describestheimplementationdetailsandhowhapticpropertiesareaddedandrenderedwithintheBlenderframework.InSection4wediscussrelatedissuesandfutureworkavenues.
II.SYSTEMOVERVIEWANDARCHITECTURE
TheBlenderdesignphilosophyisbasedonthreemaintasks:
datastorage,editing,andvisualization.Accordingtothelegacydocumentation[3],itfollowsadata-visualize-editdevelopmentcycleforthe3Dmodelingpipeline.A3DsceneisrepresentedusingdatastructureswithintheBlenderarchitecture.Themodelerviewsthescene,makeschangesusingtheeditinginterfacewhichdirectlymodifiestheunderlyingdatastructures,andthenthecyclerepeats.
Tobetterunderstandthisdevelopmentcycle,considertherepresentationofa3DobjectinBlender.A3Dobjectmayberepresentedbyanarrayofverticeswhichhave
beenorganizedasapolygonalmesh.Usersmaychoosetooperateonanysubsetofthisdataset.Editingtasksmayincludeoperationstorotate,scale,andtranslatethe
vertices,orperhapsare-meshingalgorithmto"
cleanup"
redundantverticesandtransformfromaquadtoatriangletopology.Thedataisvisualizedusingagraphical3Drendererwhichiscapableofdisplayingtheobjectasawireframeorasashaded,solidsurface.Thevisualizationisnecessaryinordertoseetheeffectsofeditingonthedata.Inanutshell,thisexampledefinesthedesignphilosophybehindBlender'
sarchitecture.
InBlender,dataisorganizedasaseriesoflistsandbasedatatypesarecombinedwithlinksbetweenitemsineachlist,creatingcomplexscenesfromsimplestructures.
Thisallowsdataelementsineachlisttobereused,thusreducingtheoverallstoragerequirements.Forexample,ameshmaybelinkedbymultiplesceneobjects,butthepositionandorientationmaychangeforeachobjectandthetopologyofthemeshremainsthesame.AdiagramillustratingtheorganizationofdatastructuresandreuseofsceneelementsisshowninFigure2.Asceneobjectlinkstothreeobjects,eachofwhichlinktotwopolygonalmeshes.Themeshesalsoshareacommonmaterialproperty.Theentiresceneisrenderedononeofseveralscreens,whichvisualizesthescene.
WeadopttheBlenderdesignapproachforourauthoringtool.Thedatastructureswhichareusedtorepresentobjectsina3Dscenehavebeenaugmentedtoincludefieldsforhapticproperties(e.g.,stiffness,damping);
userinterfacecomponents(e.g.,buttonpanels)whichallowthemodelertochangeobjectpropertieshavealsobeenupdatedtoincludesupportformodifyingthehapticpropertiesofanobject.Additionally,aninteractivehapto-visualrendererhasbeenimplementedtodisplaythe
3Dscenegraphicallyandhaptically,providingthemodelerorartistwithimmediatefeedbackaboutthechangestheymaketothescene.inthecurrentversionoftheHAMLAT.themodificationstotheBlenderframeworkinclude:
datastructuresforrepresentinghapticproperties,
aneditinginterfaceformodifyinghapticproperties,anexternalrendererfordisplayingandpreviewinghapticallyenabledscenes,scriptswhichallowscenestobeimported/exportedintheHAMLfileformat.
AclassdiagramoutliningthechangestotheBlenderrameworkisshowninFigure3.ComponentswhichareertinenttoHAMLATareshadedingray.HAMLATbuildsonexistingBlendersub-systemsbyextendingthemorhapticmodelingpurposes.Datastructuresforrepresentingobjectgeometryandgraphicalrenderingareaugmentedtoincludefieldwhichencompassthetactilepropertiesnecessaryforhapticrendering.
ToallowtheusertomodifyhapticpropertiesGUIComponentsareintegratedaspartoftheBlendereditingpanels.Theoperationstriggeredbythesecomponents
operatedirectlyonthedatastructuresusedforrepresentinghaticcuesandmaybeconsideredpartoftheeditingstepoftheBlenderdesigncycle.
Similarlytothebuilt-ingraphicalrenderer,HAMLATusesacustomrendlererfordisplaying3Dsscenesgrphcalandhaptcall,anisineednoftheBlenderrenderer.Thiscomponentisdevelopedindependentlysincehapticalandgraphicalrenderingmustbeperformedsimultaneouslyandsynchronously.Asimulationloopisusedtoupdatehapticrend
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机械 英文翻译 搅拌机