2016-11-22 8 views
0

localscaleの値を取得して文字列に変換するコードを作成しました。おそらく、それは10にそれを掛けることによってセンチメートルに測定単位を変更する必要があります。問題は、文字列の値を掛けようとすると、それは文字列afterallのため動作しません。私もそれを文字列に変換しようと計画しましたが、残念ながら私は代わりにもっと混乱しました。文字列に変換したlocalscale値を加算/減算/乗算する方法はありますか?数式なしのバニラコードです。UnityのToString値を掛けるC#

using UnityEngine; 
using System.Collections; 
using UnityEngine.UI; 

public class ScaleSlider : MonoBehaviour { 

    public Slider sliderLength; 
    public Slider sliderWidth; 
    public Slider sliderHeight; 
    public Text textLength; 
    public Text textWidth; 
    public Text textHeight; 

    // Use this for initialization 
    void Start() { 
     sliderWidth.value = 1f; 
     sliderLength.value = 1f; 
     sliderHeight.value = 1f; 
    } 

    void Update() { 
     textLength.text = transform.localScale.x.ToString(); 
     textWidth.text = transform.localScale.y.ToString(); 
     textHeight.text = transform.localScale.z.ToString(); 
     transform.localScale = new Vector3(sliderLength.value*1, sliderWidth.value*1, sliderHeight.value*1); 

    } 

} 
+1

'int.Parse(文字列)' – bixarrio

+5

意味:(transform.localScale.x * 10).ToString(); ? – RvdK

+0

ありがとうございましたrvdk。確かに私が必要なもの:)悲しいことに私は答えとしてあなたのコメントを投票することができません。 –

答えて

2

最初に数値Typeに変換する必要があります。 試してみてください。

float.Parse(transform.localScale.x.ToString()) *= 10f; 

それとも、何を達成しようとしているが、それを乗算する場合と、その後あなたが試みることができる文字列に変換します

(transform.localScale.x * 10f).ToString(); 
関連する問題