コード例 #1
0
        /// <summary>
        /// MCUtilStructureValuesで管理されている指定したテクニックのパラメーターをセットする
        /// </summary>
        /// <param name="idx">テクニック番号。</param>
        /// <param name="src">MCUtilStructureValuesSP参照</param>
        /// <returns>エラーが発生しなかった場合は true を返す。</returns>
        public bool Set(int idx, MCUtilStructureValues src)
        {
            if (m_TPars.Count <= idx || src == null)
            {
                return(false);
            }

            List <MCUtilValueEX> p = m_TPars[idx].item;

            if (p.Count == 0)
            {
                return(true);
            }

            foreach (var val in src.GetValues())
            {
                if (p.Count <= val.Key)
                {
                    continue;
                }
                if (val.Value.GetUtilValueType() != p[val.Key].GetUtilValueType())
                {
                    continue;
                }
                switch (val.Value.GetUtilValueType())
                {
                case UtilValueType.FLOAT:
                case UtilValueType.FLOAT2:
                case UtilValueType.FLOAT3:
                case UtilValueType.FLOAT4:
                case UtilValueType.FLOAT4x4:
                case UtilValueType.ARY_FLOAT:
                    p[val.Key].SetFloatArray(val.Value.GetFloatArray(), val.Value.GetSize());
                    break;

                case UtilValueType.INT:
                case UtilValueType.ARY_INT:
                    p[val.Key].SetIntArray(val.Value.GetIntArray(), val.Value.GetSize());
                    break;

                case UtilValueType.BOOL:
                case UtilValueType.ARY_BOOL:
                    p[val.Key].SetBoolArray(val.Value.GetBoolArray(), val.Value.GetSize());
                    break;
                }
            }
            this.Commit(idx);
            return(true);
        }
コード例 #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="r"></param>
 /// <returns></returns>
 public bool SetUniqueValue(MCUtilStructureValues r)
 {
     return(m_techniqueParaMgr.Set(m_currentTechNo, r));
 }