From 8befdcba1a52f7a9382c47f51018d3ea898cf64c Mon Sep 17 00:00:00 2001 From: YunfeiBai Date: Fri, 30 Sep 2016 12:30:34 -0700 Subject: [PATCH] Modify table rendering. --- data/table/table.urdf | 27 ++++++++ data/table_square/checker_grid.jpg | Bin 0 -> 32768 bytes data/table_square/table.mtl | 16 +++++ data/table_square/table.obj | 48 ++++++++++++++ data/table_square/table_square.urdf | 61 ++++++++++++++++++ .../PhysicsServerCommandProcessor.cpp | 16 ++--- 6 files changed, 160 insertions(+), 8 deletions(-) create mode 100644 data/table_square/checker_grid.jpg create mode 100644 data/table_square/table.mtl create mode 100644 data/table_square/table.obj create mode 100644 data/table_square/table_square.urdf diff --git a/data/table/table.urdf b/data/table/table.urdf index bff9395e8..5a923a700 100644 --- a/data/table/table.urdf +++ b/data/table/table.urdf @@ -24,6 +24,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/table_square/checker_grid.jpg b/data/table_square/checker_grid.jpg new file mode 100644 index 0000000000000000000000000000000000000000..416550484781b021736622428e21057e793c3683 GIT binary patch literal 32768 zcmeHQ3tUY3+yB+5QL$6HQGX`)P@7B1l1?G9Eo~waT9;IkTsF7OoQlY$bz7H^L93DL zDhYoYqYEn}mr_>KWfS7xjBcmq%sKCKrVIOjdq4jy(fhtn-3UhZ8O|<#5W_yj&mCCJYnLu z?o+3EOrPO7bN&LKg}#3Ni&p#?ymHm*HEY*zh}gI(a`Tp5yMNiUci;Z#1IJ>2Jsu}I z5q~lv@j}wYp==W%|8_hIKR;v-9YAiB|7n zQ)GtomS<}l^|3DMD`%#rnpx{67XG(p);zIy^U6n^IBKwY96f{~C3!?WR2!Ki_=4@{ z6QjMTDF+Mr3R~qM8o3@QMFNNWY7QF60DaHR6Uu^I$+-130vesaOQWivi$k%*#y7(k z4v|Hp^%3GyYyJhE@@Ib<{kpPBO&-I%nYo5Qj7#=lZ-0^U@jUS>aec`B7o2**d%r() zWWzw1Yt_RqSw9djHJW2jqr}k1c-76L_qpZOO&1ICr4d&Lzimt-KfXd=pGGd0FJJ`k zT`rMF*ovs{#R?36vY$rvp35Bg3soawX7eYH>~V%h<_R*M@{r~p8pVxX4ohJ2ZU_o? zZP>M8?S{Rl80W?Mn=k5%s})pl4;qEX(I}gv6w*kxHy5j0=D;P#gA>=7M5AL|1xBMH z%d_~~;!qwD9q|rED4NjvQUbARanvVE#lVsA+mWt%RrV))cT)a%9%q<8jwh1Bz z1}Sy1Jm%Y4fh%aV&j8_Ri=?ut(t0yIkw#RP{4yGSZO(bcdm^eCKzPFA$A`3dgcTlx z!MLr%(|YL0lfy|ztJEkf7h*uLX3TMy
tk->xX_|y~M<@O7lSL&JLGiI}{-bN2! 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 Di>7S% literal 0 HcmV?d00001 diff --git a/data/table_square/table.mtl b/data/table_square/table.mtl new file mode 100644 index 000000000..a3bc51659 --- /dev/null +++ b/data/table_square/table.mtl @@ -0,0 +1,16 @@ +newmtl table + Ns 10.0000 + Ni 1.5000 + d 1.0000 + Tr 0.0000 + Tf 1.0000 1.0000 1.0000 + illum 2 + Ka 0.0000 0.0000 0.0000 + Kd 0.5880 0.5880 0.5880 + Ks 0.0000 0.0000 0.0000 + Ke 0.0000 0.0000 0.0000 + map_Ka table.tga + map_Kd checker_grid.jpg + + + diff --git a/data/table_square/table.obj b/data/table_square/table.obj new file mode 100644 index 000000000..6ec6d9876 --- /dev/null +++ b/data/table_square/table.obj @@ -0,0 +1,48 @@ +# table.obj +# + +o table +mtllib table.mtl + +v -0.500000 -0.500000 0.500000 +v 0.500000 -0.500000 0.500000 +v -0.500000 0.500000 0.500000 +v 0.500000 0.500000 0.500000 +v -0.500000 0.500000 -0.500000 +v 0.500000 0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 + +vt 0.000000 0.000000 +vt 1.000000 0.000000 +vt 0.000000 1.000000 +vt 1.000000 1.000000 + +vn 0.000000 0.000000 1.000000 +vn 0.000000 1.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 0.000000 -1.000000 0.000000 +vn 1.000000 0.000000 0.000000 +vn -1.000000 0.000000 0.000000 + +g table +usemtl table +s 1 +f 1/1/1 2/2/1 3/3/1 +f 3/3/1 2/2/1 4/4/1 +s 2 +f 3 4 5 +f 5 4 6 +s 3 +f 5 6 7 +f 7 6 8 +s 4 +f 7 8 1 +f 1 8 2 +s 5 +f 2 8 4 +f 4 8 6 +s 6 +f 7 1 5 +f 5 1 3 + diff --git a/data/table_square/table_square.urdf b/data/table_square/table_square.urdf new file mode 100644 index 000000000..920d979a5 --- /dev/null +++ b/data/table_square/table_square.urdf @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/SharedMemory/PhysicsServerCommandProcessor.cpp b/examples/SharedMemory/PhysicsServerCommandProcessor.cpp index cb4163c3c..37010d871 100644 --- a/examples/SharedMemory/PhysicsServerCommandProcessor.cpp +++ b/examples/SharedMemory/PhysicsServerCommandProcessor.cpp @@ -3110,7 +3110,7 @@ void PhysicsServerCommandProcessor::stepSimulationRealTime(double dtInSec) // Table area loadUrdf("table/table.urdf", objectWorldTr[0].getOrigin(), objectWorldTr[0].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); loadUrdf("tray.urdf", objectWorldTr[1].getOrigin(), objectWorldTr[1].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("cup_small.urdf", objectWorldTr[2].getOrigin(), objectWorldTr[2].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("cup_small.urdf", objectWorldTr[2].getOrigin(), objectWorldTr[2].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); //loadUrdf("pitcher_small.urdf", objectWorldTr[3].getOrigin(), objectWorldTr[3].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); loadUrdf("teddy_vhacd.urdf", objectWorldTr[4].getOrigin(), objectWorldTr[4].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); loadUrdf("cube_small.urdf", objectWorldTr[5].getOrigin(), objectWorldTr[5].getRotation(), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); @@ -3124,13 +3124,13 @@ void PhysicsServerCommandProcessor::stepSimulationRealTime(double dtInSec) loadUrdf("cube_small.urdf", btVector3(0.3, 0.6, 0.85), btQuaternion(0, 0, 0, 1), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); // Chess area - loadUrdf("table_square.urdf", btVector3(-1.0, 0, 0.0), btQuaternion(0, 0, 0, 1), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("pawn.urdf", btVector3(-0.8, -0.1, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("queen.urdf", btVector3(-0.9, -0.2, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("king.urdf", btVector3(-1.0, 0, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("bishop.urdf", btVector3(-1.1, 0.1, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("rook.urdf", btVector3(-1.2, 0, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); - //loadUrdf("knight.urdf", btVector3(-1.2, 0.2, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("table_square/table_square.urdf", btVector3(-1.0, 0, 0.0), btQuaternion(0, 0, 0, 1), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("pawn.urdf", btVector3(-0.8, -0.1, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("queen.urdf", btVector3(-0.9, -0.2, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("king.urdf", btVector3(-1.0, 0, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("bishop.urdf", btVector3(-1.1, 0.1, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("rook.urdf", btVector3(-1.2, 0, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); + loadUrdf("knight.urdf", btVector3(-1.2, 0.2, 0.7), btQuaternion(btVector3(1, 0, 0), SIMD_HALF_PI), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); loadUrdf("husky/husky.urdf", btVector3(2, -5, 1), btQuaternion(0, 0, 0, 1), true, false, &bodyId, &gBufferServerToClient[0], gBufferServerToClient.size()); m_data->m_huskyId = bodyId;