当前位置: 首页>>代码示例>>Python>>正文


Python core.Vec3方法代码示例

本文整理汇总了Python中panda3d.core.Vec3方法的典型用法代码示例。如果您正苦于以下问题:Python core.Vec3方法的具体用法?Python core.Vec3怎么用?Python core.Vec3使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在panda3d.core的用法示例。


在下文中一共展示了core.Vec3方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: benchmark

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def benchmark(self):
        mopath = (
            (Vec3(0.0, 450.0, 200.0), Vec3(180.0, -23.9624938965, 0.0)),
            (Vec3(-190.848297119, 304.510772705, 90.5852050781), Vec3(209.767547607, -19.2802791595, 0.0)),
            (Vec3(-220.74269104, 10.6886262894, 38.7188148499), Vec3(278.595062256, -16.6669464111, -0.00123210949823)),
            (Vec3(-51.2080802917, -188.072463989, 50.2380104065), Vec3(364.747375488, -22.7647132874, 0.0)),
            (Vec3(211.633651733, -190.621276855, 216.169631958), Vec3(413.887451172, -40.1869468689, -0.000118153897347)),
            (Vec3(320.780090332, 303.404388428, 341.834014893), Vec3(495.000030518, -41.1669464111, 0.00174981483724)),
            (Vec3(125.150436401, 294.57989502, 218.834960938), Vec3(444.363800049, 3.80416536331, 0.0)),
            (Vec3(-355.501434326, 153.010559082, 68.0701370239), Vec3(611.234924316, -11.5491724014, 0.000359044410288)),
            (Vec3(-118.283355713, -115.640907288, 6.09887886047), Vec3(637.222473145, -8.82695007324, 0.0)),
            (Vec3(80.3096160889, 12.4637413025, 26.0630741119), Vec3(676.439758301, -24.3980617523, 0.0)),
            (Vec3(69.6195449829, 152.581176758, 14.8633785248), Vec3(881.898925781, -15.3602952957, 0.0)),
            (Vec3(-202.29776001, 109.818962097, 94.7222290039), Vec3(962.381530762, -27.7736206055, 0.00155594921671)),
            (Vec3(6.89826059341, -412.195037842, 221.591659546), Vec3(1080.42749023, -31.1491756439, 0.0)),
            (Vec3(362.657867432, -34.1290054321, 216.362884521), Vec3(1166.81677246, -35.0691833496, 0.0)),
            (Vec3(-0.339450836182, 452.040649414, 199.996627808), Vec3(180.0, -23.9624938965, 0.0)),
        )
        self.controller.play_motion_path(mopath, 3.0) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:21,代码来源:main.py

示例2: tour

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def tour(self):
        control_points = (
            (Vec3(2755.62084961, 6983.76708984, 506.219055176), Vec3(-179.09147644, 4.30751991272, 0.0)),
            (Vec3(3153.70068359, 5865.30859375, 560.780822754), Vec3(-225.239028931, 3.43641376495, 0.0)),
            (Vec3(2140.57080078, 5625.22753906, 598.345031738), Vec3(-196.022613525, 1.91196918488, 0.0)),
            (Vec3(2598.85961914, 3820.56958008, 627.692993164), Vec3(-272.410125732, 3.32752752304, 0.0)),
            (Vec3(1894.64526367, 3597.39257812, 647.455078125), Vec3(-198.227630615, 0.605303645134, 0.0)),
            (Vec3(1998.48425293, 1870.05358887, 639.38458252), Vec3(-121.682502747, 0.169744253159, 0.0)),
            (Vec3(3910.55297852, 2370.70922852, 518.356567383), Vec3(-130.42376709, 3.65418696404, -0.000583928485867)),
            (Vec3(4830.80761719, 1542.30749512, 501.019073486), Vec3(21.7212314606, 8.00974178314, 0.0)),
            (Vec3(4324.81982422, 2259.2409668, 713.095458984), Vec3(-19.1500263214, -1.68137300014, 0.0)),
            (Vec3(4584.38720703, 3417.75073242, 612.79510498), Vec3(-39.4675331116, -4.94804239273, 0.0)),
            (Vec3(4569.68261719, 4840.80908203, 540.924926758), Vec3(-83.4887771606, 4.08973407745, 0.0)),
            (Vec3(5061.6484375, 5490.93896484, 694.142578125), Vec3(-135.778717041, 0.605291008949, 0.0)),
            (Vec3(6273.03222656, 6343.10546875, 769.735290527), Vec3(-200.826278687, -1.35470712185, 0.0)),
            (Vec3(7355.02832031, 6314.39892578, 1164.65527344), Vec3(-262.645324707, -12.2435855865, 0.0)),
            (Vec3(6321.42431641, 4453.68310547, 898.895202637), Vec3(-322.574157715, -2.22581481934, 0.0)),
            (Vec3(4820.63916016, 4637.07128906, 793.165222168), Vec3(-330.291748047, 0.931967377663, 0.0)),
            (Vec3(2621.3125, 4790.99072266, 691.223144531), Vec3(-423.059020996, 3.10974740982, 0.0)),
            (Vec3(2166.64697266, 5683.75195312, 685.415039062), Vec3(-497.871612549, -1.57248008251, 0.0)),
            (Vec3(2426.64135742, 7216.48974609, 993.247558594), Vec3(-524.17388916, -6.69025611877, 0.0)),
            (Vec3(5014.83398438, 6712.60253906, 963.192810059), Vec3(-596.072387695, -3.31469583511, 0.00446693599224)),
            (Vec3(6107.69970703, 5460.03662109, 820.63104248), Vec3(-650.567199707, 1.04085958004, 0.0)),
        )
        self.controller.play_motion_path(control_points, 3.0) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:27,代码来源:main.py

示例3: fadeOutLevel

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def fadeOutLevel(self,fadeTime=1):
        """
        the level-falls-apart animation.
        """
        tiles = self.levelNode.findAllMatches("=Pos")
        for tile in tiles:
            x,y,z = self.getPosFromTile(tile)
            self.stopAnimatedTile(x,y,True)
            tile.setPos(x,y,0)
            #tile.setHpr(random()*360,random()*360,random()*360)
            # seq = LerpPosHprInterval(tile,fadeTime+(0.3*fadeTime*random()),(x,y,-15),(random()*360 -180,random()*360-180,random()*360-180), blendType='easeIn')
            # seq.start()

            final_hpr = Vec3(random(), random(), random()) * 360.0
            force = (Vec3(random(), random(), random())-0.5) * 5.0
            force.z = 0
            seq = LerpFunc(self.tileGravityAnimation, fromData=0, toData=1, duration=1.0, blendType='noBlend', extraArgs=[tile.get_pos(render), Vec3(0), final_hpr, tile, force])
            tile.setPythonTag("Seq", seq)
            seq.start() 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:21,代码来源:LevelLoader.py

示例4: tour

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def tour(self):
        """ Camera flythrough """
        mopath = (
            (Vec3(-10.8645000458, 9.76458263397, 2.13306283951), Vec3(-133.556228638, -4.23447799683, 0.0)),
            (Vec3(-10.6538448334, -5.98406457901, 1.68028640747), Vec3(-59.3999938965, -3.32706642151, 0.0)),
            (Vec3(9.58458328247, -5.63625621796, 2.63269257545), Vec3(58.7906494141, -9.40668964386, 0.0)),
            (Vec3(6.8135137558, 11.0153560638, 2.25509500504), Vec3(148.762527466, -6.41223621368, 0.0)),
            (Vec3(-9.07093334198, 3.65908527374, 1.42396306992), Vec3(245.362503052, -3.59927511215, 0.0)),
            (Vec3(-8.75390911102, -3.82727789879, 0.990055501461), Vec3(296.090484619, -0.604830980301, 0.0)),
        )
        self.controller.play_motion_path(mopath, 3.0) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:13,代码来源:main.py

示例5: tour

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def tour(self):
        mopath = (
            (Vec3(3.97601628304, -15.5422525406, 1.73230814934), Vec3(49.2462043762, -11.7619161606, 0.0)),
            (Vec3(4.37102460861, -6.52981519699, 2.84148645401), Vec3(138.54864502, -15.7908058167, 0.0)),
            (Vec3(-5.88968038559, -13.9816446304, 2.44033527374), Vec3(302.348571777, -13.2863616943, 0.0)),
            (Vec3(5.23844909668, -18.1897411346, 4.54698801041), Vec3(402.91229248, -14.7019147873, 0.0)),
            (Vec3(-7.27328443527, -0.466051012278, 3.30696845055), Vec3(607.032165527, -19.6019115448, 0.0)),
            (Vec3(5.33415555954, 1.92750489712, 2.53945565224), Vec3(484.103546143, -11.9796953201, 0.0)),
            (Vec3(-0.283608138561, -6.86583900452, 1.43702816963), Vec3(354.63848877, -4.79302883148, 0.0)),
            (Vec3(-11.7576808929, 7.0855755806, 3.40899515152), Vec3(272.73840332, -12.959692955, 0.0)),
            (Vec3(7.75462722778, 13.220041275, 3.97876667976), Vec3(126.342140198, -19.4930171967, 0.0)),
            (Vec3(-2.10827493668, 4.78230571747, 1.27567899227), Vec3(-40.1353683472, -5.77301359177, 0.0)),
            (Vec3(8.67115211487, 16.9084873199, 3.72598099709), Vec3(89.5658569336, -10.9996757507, 0.0)),
            (Vec3(-8.1254825592, 26.6411190033, 3.21335697174), Vec3(268.092102051, -12.1974525452, 0.0)),
            (Vec3(7.89382314682, 45.8911399841, 4.47727441788), Vec3(498.199554443, -11.3263425827, 0.0)),
            (Vec3(-2.33054184914, 43.8977775574, 1.86498868465), Vec3(551.198242188, 13.6092195511, 0.0)),
            (Vec3(4.80335664749, 36.9664497375, 6.16300296783), Vec3(810.128417969, -10.6730031967, 0.0)),
            (Vec3(45.0654678345, 7.54712438583, 22.2645874023), Vec3(808.238586426, -17.5330123901, 0.0)),
            (Vec3(5.99377584457, -12.3760728836, 4.53536558151), Vec3(806.978820801, -2.39745855331, 0.0)),
            (Vec3(6.05853939056, -1.72227275372, 4.53848743439), Vec3(809.65637207, -2.39745855331, 0.0)),
            (Vec3(4.81568479538, 8.28769683838, 4.48393821716), Vec3(809.65637207, -2.39745855331, 0.0)),
            (Vec3(5.82831144333, 17.5230751038, 4.52401590347), Vec3(809.65637207, -2.39745855331, 0.0)),
            (Vec3(4.09594917297, 26.7909412384, 4.44915866852), Vec3(809.65637207, -2.39745855331, 0.0)),
            (Vec3(4.39108037949, 37.2143096924, 5.16932630539), Vec3(809.65637207, -2.39745855331, 0.0)),
        )
        self.controller.play_motion_path(mopath, 2.3) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:28,代码来源:main.py

示例6: animateShard

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def animateShard(self, t, initial_pos, dest_hpr, shard, force):
        
        z_force = -(t**2) * 9.81 * 1.7
        regular_force = force * t

        dest_pos = initial_pos + regular_force + Vec3(0, 0, z_force)

        shard.set_pos(dest_pos)
        shard.set_hpr(dest_hpr * t) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:11,代码来源:Cube.py

示例7: animateCube

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def animateCube(self, t, initial_pos, initial_hpr, dest_hpr, cube, force):
        z_force = -(t**2) * 9.81 * 1.7
        regular_force = force * t
        dest_pos = initial_pos + regular_force + Vec3(0, 0, z_force)
        cube.set_pos(render, dest_pos)
        cube.set_hpr(render, initial_hpr * (1 - t) + dest_hpr * t)
        # cube.set_hpr(render, initial_hpr) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:9,代码来源:Cube.py

示例8: tileGravityAnimation

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def tileGravityAnimation(self, t, initial_pos, initial_hpr, dest_hpr, tile, force):
        """
        Animates a tile by applying gravity
        """
        z_force = -(t**2) * 9.81 * 1.7
        regular_force = force * t
        dest_pos = initial_pos + regular_force + Vec3(0, 0, z_force)
        tile.set_pos(render, dest_pos)
        tile.set_hpr(render, initial_hpr * (1 - t) + dest_hpr * t) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:11,代码来源:LevelLoader.py

示例9: convert_data

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def convert_data(subdiv_data, vert_normals):

    positions = subdiv_data["positions"]
    uvs = subdiv_data["uvs"]
    subdiv_uv_faces = subdiv_data["uv_faces"]
    geom_data = []
    processed_data = {}
    processed_mvs = []
    processed_uv_mvs = []

    for face in subdiv_uv_faces:

        for i in face:

            vert_data = {}
            (u, v), j = uvs[i]
            vert_data["pos"] = Point3(*positions[j])
            vert_data["normal"] = Vec3(vert_normals[j])
            vert_data["uvs"] = {0: (u, v)}

            if j in processed_mvs:
                vert_data["pos_ind"] = processed_mvs.index(j)
            else:
                vert_data["pos_ind"] = len(processed_mvs)
                processed_mvs.append(j)

            if i in processed_uv_mvs:
                vert_data["uv_ind"] = processed_uv_mvs.index(i)
            else:
                vert_data["uv_ind"] = len(processed_uv_mvs)
                processed_uv_mvs.append(i)

            processed_data[i] = vert_data

        tris = []

        for indices in ((face[0], face[1], face[2]), (face[0], face[2], face[3])):
            tri_data = [processed_data[i] for i in indices]
            tris.append(tri_data)

        poly_verts = [processed_data[i] for i in face]
        poly_data = {"verts": poly_verts, "tris": tris}
        geom_data.append(poly_data)

    return geom_data 
开发者ID:Epihaius,项目名称:panda3dstudio,代码行数:47,代码来源:catmull_clark.py

示例10: __init__

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def __init__(self):

        # Setup window size, title and so on
        load_prc_file_data("", """
            win-size 1600 900
            window-title Render Pipeline - Car Demo
        """)

        # ------ Begin of render pipeline code ------

        # Insert the pipeline path to the system path, this is required to be
        # able to import the pipeline classes
        pipeline_path = "../../"

        # Just a special case for my development setup, so I don't accidentally
        # commit a wrong path. You can remove this in your own programs.
        if not os.path.isfile(os.path.join(pipeline_path, "setup.py")):
            pipeline_path = "../../RenderPipeline/"

        sys.path.insert(0, pipeline_path)

        from rpcore import RenderPipeline, SpotLight
        self.render_pipeline = RenderPipeline()
        self.render_pipeline.create(self)

        # This is a helper class for better camera movement - its not really
        # a rendering element, but it included for convenience
        from rpcore.util.movement_controller import MovementController

        # ------ End of render pipeline code, thats it! ------

        self.render_pipeline.daytime_mgr.time = "20:08"

        # Load the scene
        model = loader.loadModel("scene/scene.bam")
        # model = loader.loadModel("scene2/Scene.bam")

        model.reparent_to(render)
        self.render_pipeline.prepare_scene(model)

        # Init movement controller
        self.controller = MovementController(self)
        self.controller.set_initial_position(
            Vec3(-7.5, -5.3, 1.8), Vec3(-5.9, -4.0, 1.6))
        self.controller.setup()

        base.accept("l", self.tour) 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:49,代码来源:main.py

示例11: __init__

# 需要导入模块: from panda3d import core [as 别名]
# 或者: from panda3d.core import Vec3 [as 别名]
def __init__(self):

        # Setup window size, title and so on
        load_prc_file_data("", """
            win-size 1600 900
            window-title Render Pipeline by tobspr
            stm-max-chunk-count 2048
            gl-coordinate-system default
            stm-max-views 20
            notify-level-linmath error
        """)

        self.render_pipeline = RenderPipeline()
        self.render_pipeline.create(self)

        # Set time of day
        self.render_pipeline.daytime_mgr.time = "04:25"

        # Add some environment probe to provide better reflections
        probe = self.render_pipeline.add_environment_probe()
        probe.set_pos(0, 0, 600)
        probe.set_scale(8192 * 2, 8192 * 2, 1000)

        self.terrain_np = render.attach_new_node("terrain")

        heightfield = loader.loadTexture("resources/heightfield.png")

        for x in range(3):
            for y in range(3):
                terrain_node = ShaderTerrainMesh()
                terrain_node.heightfield = heightfield
                terrain_node.target_triangle_width = 6.0
                terrain_node.generate()

                terrain_n = self.terrain_np.attach_new_node(terrain_node)
                terrain_n.set_scale(8192, 8192, 600)
                terrain_n.set_pos(-4096 + (x - 1) * 8192, -4096 + (y - 1) * 8192, 0)

        # Init movement controller
        self.controller = MovementController(self)
        self.controller.set_initial_position(Vec3(-12568, -11736, 697), Vec3(-12328, -11357, 679))
        self.controller.setup()

        self.accept("r", self.reload_shaders)
        self.reload_shaders() 
开发者ID:tobspr,项目名称:RenderPipeline-Samples,代码行数:47,代码来源:main.py


注:本文中的panda3d.core.Vec3方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。