示例#1
0
    private void OnValidate()
    {
                #if UNITY_EDITOR
        if (EditorApplication.isPlayingOrWillChangePlaymode)
        {
            return;
        }
                #endif

        if (PrismP < 3)
        {
            PrismP = 3;
        }
        if (PrismP > 16)
        {
            PrismP = 16;
        }
        if (PrismQ > PrismP - 2)
        {
            PrismQ = PrismP - 2;
        }
        if (PrismQ < 2)
        {
            PrismQ = 2;
        }

        var currentState = new PolyPreset();
        currentState.CreateFromPoly("temp", this);
        if (previousState != currentState)
        {
            MakePolyhedron();
            previousState = currentState;
        }
    }
示例#2
0
    public void AddPresetFromPoly(string presetName)
    {
        var existingPreset = Items.Find(x => x.Name.Equals(presetName));

        Items.Remove(existingPreset);
        var preset = new PolyPreset();

        preset.CreateFromPoly(presetName, _poly);
        Items.Add(preset);
    }
示例#3
0
    private void OnValidate()
    {
        var currentState = new PolyPreset();

        currentState.CreateFromPoly("temp", this);
        if (previousState != currentState)
        {
            MakePolyhedron();
            previousState = currentState;
        }
    }
示例#4
0
    public void AddPresetsFromPath(string path, bool overwrite = false)
    {
        var existingPresets = Items.Select(x => x.Name);
        var dirInfo         = new DirectoryInfo(path);
        var fileInfo        = dirInfo.GetFiles(PresetFileNamePrefix + "*.json");

        foreach (var file in fileInfo)
        {
            var preset = new PolyPreset();
            preset = JsonConvert.DeserializeObject <PolyPreset>(File.ReadAllText(file.FullName));
            if (string.IsNullOrEmpty(preset.Name))
            {
                preset.Name = file.Name.Replace(PresetFileNamePrefix, "").Replace(".json", "");
            }
            if (!existingPresets.Contains(preset.Name) || overwrite)
            {
                Items.Add(preset);
            }
        }
    }
示例#5
0
 public void ApplyPresetToPoly(PolyPreset preset)
 {
     preset.ApplyToPoly(ref _poly, APresets);
 }