public TerrainMixingLogic(
     IMapRenderConfig renderConfig, IGeometry2D geometry2D
     )
 {
     RenderConfig = renderConfig;
     Geometry2D   = geometry2D;
 }
Пример #2
0
 private void InjectDependencies(
     ITerrainAlphamapLogic alphamapLogic, ITerrainHeightLogic heightLogic,
     IMapRenderConfig renderConfig, IWaterTriangulator waterTriangulator,
     IHexFeatureManager hexFeatureManager, ICultureTriangulator cultureTriangulator, IHexCellShaderData shaderData,
     DiContainer container, IHexMeshFactory hexMeshFactory, IRoadTriangulator roadTriangulator,
     IMarshTriangulator marshTriangulator, IOasisTriangulator oasisTriangulator,
     ITerrainBaker terrainBaker, IOrientationBaker orientationBaker, IGeometry2D geometry2D,
     IPointOrientationLogic pointOrientationLogic, IFullMapRefresher fullMapRefresher,
     [Inject(Id = "Feature Container")] Transform featureContainer, MapRenderingSignals mapRenderingSignals,
     IVisibilityResponder visibilityResponder
     )
 {
     AlphamapLogic         = alphamapLogic;
     HeightLogic           = heightLogic;
     RenderConfig          = renderConfig;
     WaterTriangulator     = waterTriangulator;
     HexFeatureManager     = hexFeatureManager;
     CultureTriangulator   = cultureTriangulator;
     ShaderData            = shaderData;
     HexMeshFactory        = hexMeshFactory;
     RoadTriangulator      = roadTriangulator;
     MarshTriangulator     = marshTriangulator;
     OasisTriangulator     = oasisTriangulator;
     TerrainBaker          = terrainBaker;
     OrientationBaker      = orientationBaker;
     Geometry2D            = geometry2D;
     PointOrientationLogic = pointOrientationLogic;
     FullMapRefresher      = fullMapRefresher;
     FeatureContainer      = featureContainer;
     MapRenderingSignals   = mapRenderingSignals;
     VisibilityResponder   = visibilityResponder;
 }
Пример #3
0
 public CultureTriangulator(
     IHexGrid grid, ICivilizationTerritoryLogic civTerritoryLogic,
     ICellEdgeContourCanon cellEdgeContourCanon, IMapRenderConfig renderConfig,
     IGeometry2D geometry2D
     )
 {
     Grid = grid;
     CivTerritoryLogic    = civTerritoryLogic;
     CellEdgeContourCanon = cellEdgeContourCanon;
     RenderConfig         = renderConfig;
     Geometry2D           = geometry2D;
 }
        static void InitShape()
        {
            Coefficients DefaultCoefficients = TimeWarp.Coefficients;

            Vector2D[] Pod1p =
                new Vector2D[] {
                new Vector2D(50, -15),
                new Vector2D(80, 15),
                new Vector2D(-50, 15),
                new Vector2D(-50, -15)
            };
            Vector2D[] Pod2p =
                new Vector2D[] {
                new Vector2D(-50, -15),
                new Vector2D(80, -15),
                new Vector2D(50, 15),
                new Vector2D(-50, 15)
            };
            Vector2D[] bridgep =
                new Vector2D[] {
                new Vector2D(-35, 20),
                new Vector2D(-35, -20),
                new Vector2D(-22, -44),
                new Vector2D(-10, -50),
                new Vector2D(20, -50),
                new Vector2D(20, 50),
                new Vector2D(-10, 50),
                new Vector2D(-22, 44)
            };


            Vector2D[]    mainhullp = Polygon2D.FromRectangle(50, 150);
            Vector2D[]    subhullp  = Polygon2D.FromRectangle(100, 30);
            IGeometry2D[] geometry  = new IGeometry2D[5];


            geometry[0] = new Polygon2D(new ALVector2D(MathHelper.PI, new Vector2D(-10, 0)), subhullp);
            geometry[1] = new Polygon2D(new ALVector2D(MathHelper.PI, new Vector2D(0, 50)), Pod1p);
            geometry[2] = new Polygon2D(new ALVector2D(MathHelper.PI, new Vector2D(0, -50)), Pod2p);
            geometry[3] = new Polygon2D(new ALVector2D(MathHelper.PI, new Vector2D(0, 0)), mainhullp);
            geometry[4] = new Polygon2D(new ALVector2D(MathHelper.PI, new Vector2D(90, 0)), bridgep);

            Coefficients[] coefficients = new Coefficients[5];
            for (int pos = 0; pos < 5; ++pos)
            {
                coefficients[pos] = DefaultCoefficients;
            }

            DefaultShape = new RigidBodyTemplate(20, 3907.8407737525167f, geometry, coefficients);
            DefaultShape.BalanceBody();
            //////DefaultShape.CalcInertiaMultiplier(.1f);
        }
Пример #5
0
 public FarmTriangulator(
     IHexGrid grid, IImprovementLocationCanon improvementLocationCanon, INoiseGenerator noiseGenerator,
     IMapRenderConfig renderConfig, IGeometry2D geometry2D, ICellEdgeContourCanon cellContourCanon,
     IRiverCanon riverCanon, MapRenderingSignals mapRenderingSignals
     )
 {
     Grid = grid;
     ImprovementLocationCanon = improvementLocationCanon;
     NoiseGenerator           = noiseGenerator;
     RenderConfig             = renderConfig;
     Geometry2D          = geometry2D;
     CellContourCanon    = cellContourCanon;
     RiverCanon          = riverCanon;
     MapRenderingSignals = mapRenderingSignals;
 }
Пример #6
0
 public void InjectDependencies(
     IWorkerSlotFactory workerSlotFactory, ICellModificationLogic cellModificationLogic,
     IMapRenderConfig renderConfig, HexCellSignals cellSignals, IGeometry2D geometry2D,
     IHexCellShaderData shaderData, IMemoryPool <MapChunk> mapChunkPool,
     IHexMeshFactory hexMeshFactory
     )
 {
     WorkerSlotFactory     = workerSlotFactory;
     CellModificationLogic = cellModificationLogic;
     RenderConfig          = renderConfig;
     CellSignals           = cellSignals;
     Geometry2D            = geometry2D;
     ShaderData            = shaderData;
     MapChunkPool          = mapChunkPool;
     HexMeshFactory        = hexMeshFactory;
 }
 public ContourRationalizer(ICellEdgeContourCanon cellEdgeContourCanon, IGeometry2D geometry2D)
 {
     CellEdgeContourCanon = cellEdgeContourCanon;
     Geometry2D           = geometry2D;
 }
 public CellEdgeContourCanon(IMapRenderConfig renderConfig, IGeometry2D geometry2D)
 {
     RenderConfig = renderConfig;
     Geometry2D   = geometry2D;
 }