Esempio n. 1
0
 partial void PreInit(ComponentResourceManager resources)
 {
     mapVisualizer = new MapVisualizer();
     //Map = new Map();
     propertyGrid1  = new PropertyGrid();
     splitContainer = new SplitContainer();
 }
Esempio n. 2
0
        private void PropertyGrid1_SelectedGridItemChanged(object sender, SelectedGridItemChangedEventArgs e)
        {
            var           ns            = e.NewSelection;
            var           os            = e.OldSelection;
            object        val           = ns.Value;
            MapVisualizer mapVisualizer = (MapVisualizer)MainController.GlobalStorage["MapVisualizer"];

            mapVisualizer.IntersectedLines = null;
            if (val is Dot dot)
            {
                val = dot;
            }
            else if (val is Line line)
            {
                val = line;
            }
            else if (val is LineSet ls)
            {
                val = ls;
            }
            else if (val is Line[] arr)
            {
                val = ns.PropertyDescriptor.GetType().GetProperty("Key")?.GetValue(ns.PropertyDescriptor);
                mapVisualizer.IntersectedLines = arr;
            }
            else
            {
                val = ns.PropertyDescriptor.GetType().GetProperty("Key")?.GetValue(ns.PropertyDescriptor);
            }
            mapVisualizer.SelectedDot     = val as Dot;
            mapVisualizer.SelectedLine    = val as Line;
            mapVisualizer.SelectedLineSet = val as LineSet;
            MainController.CurrentController.CurrentImage.OnUpdate(Update.Full, null);
        }
Esempio n. 3
0
 private void Awake()
 {
     visualizer = GetComponent <MapVisualizer>();
     loader     = GetComponent <MapLoader>();
     mapData    = GetComponent <MapData>();
     StartCoroutine(Initializing());
 }
    private void Start()
    {
        useRandToggle.isOn   = useRandomSeed;
        seedField.text       = seed;
        widthField.text      = width.ToString();
        heightField.text     = height.ToString();
        fillSlider.value     = randomFillPercent;
        smoothSlider.value   = smoothingIterations;
        nDistXSlider.value   = neighborDistanceX;
        nDistYSlider.value   = neighborDistanceY;
        autoRegenToggle.isOn = autoRegenerate;

        mapVisualizer = GetComponent <MapVisualizer>();
        GenerateMap();
    }
    public override void OnInspectorGUI()
    {
        MapVisualizer visualizer = target as MapVisualizer;

        DrawDefaultInspector();

        EditorGUILayout.LabelField("Generation parameters", EditorStyles.boldLabel);
        visualizer.TextureWidth  = EditorGUILayout.IntField("Texture Width", visualizer.TextureWidth);
        visualizer.TextureLength = EditorGUILayout.IntField("Texture Length", visualizer.TextureLength);
        visualizer.TextureScale  = EditorGUILayout.Slider("Texture Scale", visualizer.TextureScale, 0.1f, 30f);

        EditorGUILayout.Space();
        if (GUILayout.Button("Regenerate Map"))
        {
            visualizer.Initialize();
        }
    }
Esempio n. 6
0
    public override void EnterState(FSMState prevState)
    {
        base.EnterState(prevState);

        ///// init
        _player = GameManager.Instance.Player;
        _mapEntity = GameManager.Instance.Map.GetComponent<MapEntity>();
        _camMover = GameManager.Instance.GameCamera.GetComponent<TweenMover>();

        _visualizer = new MapVisualizer();
        _visualizer.RenderMap(GameManager.Instance.CurrentMap);
        /////

        // set up camera transition response
        _camMover.OnMoveBegin += OnCameraMoveBegin;
        _camMover.OnMoveEnd += OnCameraMoveEnd;

        // set up player move response
        _player.GetComponent<RigidBodyMover>().OnMove += OnPlayerMove;

        EnableInput();
    }
Esempio n. 7
0
    public override void EnterState(FSMState prevState)
    {
        base.EnterState(prevState);

        ///// init
        _player    = GameManager.Instance.Player;
        _mapEntity = GameManager.Instance.Map.GetComponent <MapEntity>();
        _camMover  = GameManager.Instance.GameCamera.GetComponent <TweenMover>();

        _visualizer = new MapVisualizer();
        _visualizer.RenderMap(GameManager.Instance.CurrentMap);
        /////

        // set up camera transition response
        _camMover.OnMoveBegin += OnCameraMoveBegin;
        _camMover.OnMoveEnd   += OnCameraMoveEnd;

        // set up player move response
        _player.GetComponent <RigidBodyMover>().OnMove += OnPlayerMove;

        EnableInput();
    }
    public void GenerateMap()
    {
        MapVisualizer mv = GetComponent <MapVisualizer>();

        float[,] noiseMap = GeneratePerlinNoiseMap(seed, offset, chunkSize, noiseScale, octaves, persistance, lacunarity);


        if (drawMode == DrawMode.NoiseMap)
        {
            Texture2D tex = mv.GenerateTexture(mv.GenerateNoiseColorMap(noiseMap), chunkSize);
            mv.PlaneVisualizer(tex);
        }
        else if (drawMode == DrawMode.ColorMap)
        {
            Texture2D tex = mv.GenerateTexture(mv.GenerateDepthColorMap(noiseMap, layers), chunkSize);
            mv.PlaneVisualizer(tex);
        }
        else if (drawMode == DrawMode.Mesh)
        {
            Texture2D  tex        = mv.GenerateTexture(mv.GenerateDepthColorMap(noiseMap, layers), chunkSize);
            CustomMesh customMesh = CustomMesh.GenerateHeightMesh(noiseMap, meshHeightModifier, heightCurve, lod);
            mv.MeshVisualizer(tex, customMesh);
        }
    }
Esempio n. 9
0
        static int TestMCPFC(int seed, int size)
        {
            int solutionCount         = 0;
            MapColoringProblem riddle = new MapColoringProblem();

            riddle.X    = size;
            riddle.Y    = size;
            riddle.Seed = seed;
            riddle.Initialize();
            riddle.OnSolutionFound += (xd) =>
            {
                solutionCount++;
                if (solutionCount == 1)
                {
                    MapVisualizer image = new MapVisualizer(xd.Select(v => v as Variable).ToList(),
                                                            riddle.Connections, riddle.X, riddle.Y);
                    image.Save("example.bmp");
                }
            };
            riddle.RunForwardChecking();
            sum += riddle.Counter;
            //Console.WriteLine(" FC: " + riddle.Counter);
            return(riddle.Counter);
        }
Esempio n. 10
0
 private void Awake()
 {
     difficulty = MapData.difficulty;
     self       = this;
     loader     = GetComponent <MapLoader>();
 }