ttsItem getItem(){ ttsItem t; t.id = rand() % SHAPE_N; t.x = 0; t.y = rand() % (PLAY_COL_N - getShapeWidth(t.id) + 1); t.color = getShapeColor(t.id); return t; }
std::string GNEPOI::getAttribute(SumoXMLAttr key) const { switch (key) { case SUMO_ATTR_ID: return myID; case SUMO_ATTR_COLOR: return toString(getShapeColor()); case SUMO_ATTR_LANE: return myLane; case SUMO_ATTR_POSITION: if (getLaneParents().size() > 0) { return toString(myPosOverLane); } else { return toString(*this); } case SUMO_ATTR_POSITION_LAT: return toString(myPosLat); case SUMO_ATTR_GEOPOSITION: return toString(myGEOPosition, gPrecisionGeo); case SUMO_ATTR_GEO: return toString(myGeo); case SUMO_ATTR_TYPE: return getShapeType(); case SUMO_ATTR_LAYER: if (getShapeLayer() == Shape::DEFAULT_LAYER_POI) { return "default"; } else { return toString(getShapeLayer()); } case SUMO_ATTR_IMGFILE: return getShapeImgFile(); case SUMO_ATTR_RELATIVEPATH: return toString(getShapeRelativePath()); case SUMO_ATTR_WIDTH: return toString(getWidth()); case SUMO_ATTR_HEIGHT: return toString(getHeight()); case SUMO_ATTR_ANGLE: return toString(getShapeNaviDegree()); case GNE_ATTR_BLOCK_MOVEMENT: return toString(myBlockMovement); case GNE_ATTR_SELECTED: return toString(isAttributeCarrierSelected()); case GNE_ATTR_GENERIC: return getGenericParametersStr(); default: throw InvalidArgument(getTagStr() + " attribute '" + toString(key) + "' not allowed"); } }
Colour Scene::trace(const Ray& ray) { Shape *shape; float t = -255; shape = intersect(t, ray); //t is change if (shape == NULL) return Colour::black(); vec3f incidentRay = ray.getDirection(); vec3f point = ray.apply(t); return getShapeColor(shape, incidentRay, point); }