Exemplo n.º 1
0
        /// <summary>
        /// The CreateContiniousWall.
        /// </summary>
        /// <param name="scale">The scale<see cref="float"/>.</param>
        /// <param name="parent">The parent<see cref="Transform"/>.</param>
        /// <param name="lineStrings">The lineStrings<see cref="ReadOnlyCollection{LineString}"/>.</param>
        private void CreateContiniousWall(float scale, Transform parent, dynamic lineStrings)
        {
            foreach (var lines in lineStrings)
            {
                Vector3[] positions;
                var       lineRenderer = MultiLineStringHandler.CreateLineRenderer(_wallPrefab, parent);
                MultiLineStringHandler.UpdateLineRendererPoints(lines, out positions, scale, lineRenderer);

                buildTowers(parent, positions, scale);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// The CreateWallsSeparately.
        /// </summary>
        /// <param name="scale">The scale<see cref="float"/>.</param>
        /// <param name="parent">The parent<see cref="Transform"/>.</param>
        /// <param name="lineStrings">The lineStrings<see cref="ReadOnlyCollection{LineString}"/>.</param>
        private void CreateWallsSeparately(float scale, Transform parent, dynamic lineStrings)
        {
            foreach (var lines in lineStrings)
            {
                Vector3[] positions = MultiLineStringHandler.GetPositionsFromLineString(lines, scale);

                for (int i = 0; i < positions.Length - 1; i++)
                {
                    var lineRenderer = MultiLineStringHandler.CreateLineRenderer(_wallPrefab, parent);
                    lineRenderer.positionCount = 2;
                    lineRenderer.SetPosition(0, positions[i]);
                    lineRenderer.SetPosition(1, positions[i + 1]);
                }

                buildTowers(parent, positions, scale);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// The Create.
        /// </summary>
        /// <param name="collection">The collection<see cref="FeatureCollection"/>.</param>
        /// <param name="scale">The scale<see cref="float"/>.</param>
        /// <param name="city">The city<see cref="GameObject"/>.</param>
        public override void Create(dynamic collection, float scale, GameObject city)
        {
            var _parent       = CityGeneratorHelper.GetParentTransformFromCity(city, CityElements.Rivers);
            var riversFeature = CityGeneratorHelper.GetFeatureBasedOnPropertyValueName(collection, idName);

            if (riversFeature == null)
            {
                return;
            }
            var polygons = CityGeneratorHelper.GetPolygonsFromFeature(riversFeature);

            foreach (var poly in polygons)
            {
                Vector3[] positions;
                var       lineRenderer = MultiLineStringHandler.CreateLineRenderer(_riverPrefab, _parent);
                MultiLineStringHandler.UpdateLineRendererPoints(poly, out positions, scale, lineRenderer);
            }
        }