예제 #1
0
    def generate_item_3d_bench(self, item_2d):
        key = "bench-default-1"
        item_3d = self.osm.catalog.instance(key)

        if not item_3d:
            item_3d = urban.bench(length=2.0)
            item_3d = self.osm.catalog.add(key, item_3d)

        coords = item_2d.geom.coords[0]
        item_3d = item_3d.rotate(
            [0, 0, item_2d.extra['ddd:angle'] - math.pi / 2])
        item_3d = item_3d.translate([coords[0], coords[1], 0.0])
        item_3d.name = 'Bench: %s' % item_2d.name
        item_3d.extra[
            '_height_mapping'] = 'terrain_geotiff_incline_elevation_apply'
        return item_3d
예제 #2
0
파일: lights.py 프로젝트: jjmontesl/ddd
catalog = PrefabCatalog()

#catalog.loadall()

item = catalog.instance('prefab-lamppost')
if not item:
    item = urban.lamppost()
    #item = plants.plant(height=10)
    #item = urban.trafficlights()
    item = catalog.add('prefab-lamppost', item)
item.extra['ddd:static'] = False
items.append(item)

item = catalog.instance('prefab-bench')
if not item:
    item = urban.bench()
    #item = plants.plant(height=10)
    #item = urban.trafficlights()
    item = catalog.add('prefab-bench', item)
item.extra['ddd:static'] = True
items.append(item)

# All items
items = ddd.align.grid(items, space=10.0)
items.append(ddd.helper.all())
items.save("lights.json")
items.dump()
items.save("lights.glb")

#catalog.export("/tmp/catalog.glb")
예제 #3
0
def pipeline_start(pipeline, root):

    ddd.mats.traffic_signs = ddd.material(
        name="TrafficSigns",
        color="#ffffff",  #color="#e01010",
        texture_path=ddd.DATA_DIR +
        "/materials/traffic-signs-es/traffic_signs_es_0.png",
        atlas_path=ddd.DATA_DIR +
        "/materials/traffic-signs-es/traffic_signs_es_0.plist")

    items = ddd.group3()

    item = urban.lamppost_high_mast()
    items.append(item)

    item = buildings.portal()
    #item = ddd.meshops.batch_by_material(item)
    items.append(item)
    #item.show()

    item = buildings.door()
    items.append(item)
    #item.show()

    item = buildings.window_with_border()
    items.append(item)

    item = common.bar_u()
    items.append(item)

    item = urban.waste_container_dome()
    items.append(item)

    item = urban.waste_container_with_lid_closed()
    items.append(item)

    item = urban.waste_container()
    items.append(item)

    item = landscape.ladder_pool()
    items.append(item)

    item = sports.golf_flag()
    items.append(item)

    item = urban.drinking_water()
    items.append(item)

    item = urban.bollard()
    items.append(item)

    item = urban.bell()
    items.append(item)

    item = urban.fire_hydrant()
    items.append(item)

    item = urban.childrens_playground_swingset()
    items.append(item)

    item = urban.childrens_playground_sandbox()
    items.append(item)

    item = urban.childrens_playground_slide()
    items.append(item)

    item = urban.childrens_playground_arc()
    items.append(item)

    item = urban.patio_table()
    items.append(item)

    item = urban.patio_chair()
    items.append(item)

    item = urban.patio_umbrella()
    items.append(item)

    item = urban.post_box()
    items.append(item)

    item = urban.lamppost()
    items.append(item)

    item = urban.busstop_small(text="Bus Stop")
    items.append(item)

    item = urban.bench()
    items.append(item)

    item = urban.sculpture()
    items.append(item)

    item = urban.sculpture_text("Test")
    item = urban.pedestal(item)
    items.append(item)

    item = urban.sculpture_text("Monumental test string",
                                vertical=True,
                                height=12)
    items.append(item)

    item = urban.trafficlights()
    #item = item.rotate([0, 0, (math.pi / 4) - math.pi / 2])
    items.append(item)

    item = urban.fountain()
    items.append(item)

    item = urban.wayside_cross()
    items.append(item)

    item = urban.trash_bin()
    items.append(item)

    item = urban.trash_bin_post()
    items.append(item)

    # Road signs
    item = urban.traffic_sign('stop')
    items.append(item)
    #item.show()
    item = urban.traffic_sign('give_way')
    items.append(item)
    #item.show()
    item = urban.traffic_sign('es:s13')
    items.append(item)
    #item.show()
    item = urban.traffic_sign('es:p1')
    items.append(item)
    item = urban.traffic_sign('es:r101')
    items.append(item)
    item = urban.traffic_sign('es:r1')
    items.append(item)
    item = urban.traffic_sign('es:r2')
    items.append(item)
    item = urban.traffic_sign('es:r3')
    items.append(item)
    item = urban.traffic_sign('es:r6')
    items.append(item)
    item = urban.traffic_sign('es:r402')
    items.append(item)
    item = urban.traffic_sign('es:r500')
    items.append(item)
    item = urban.traffic_sign('es:r504')
    items.append(item)
    #item = urban.traffic_sign('es:r505-b')
    #items.append(item)
    item = urban.traffic_sign('es:r505')
    items.append(item)
    item = urban.traffic_sign('es:r506')
    items.append(item)

    #item.show()
    '''
    # Reduced
    items_org = items.copy()

    items = ddd.meshops.reduce(items_org)

    items = ddd.align.grid(items)
    items.append(ddd.helper.all())
    items.show()

    items = ddd.meshops.reduce_bounds(items_org)

    items = ddd.align.grid(items)
    items.append(ddd.helper.all())
    items.show()
    '''

    items = ddd.align.grid(items)
    items.append(ddd.helper.all())
    #items.show()
    #items.save("/tmp/test.glb")

    #items = ddd.meshops.batch_by_material(items)
    #items.dump()
    items.show()
    #items.save("/tmp/test.json")

    pipeline.root = items