예제 #1
0
 public void GETTexture(string service, string operation, Dictionary <string, string> parameters, Service.TextureCallback callback)
 {
     StartCoroutine(DoGETTexture(service, operation, parameters, (texture, error) => {
         callback(texture, error);
     }));
 }
예제 #2
0
    IEnumerator DoGETTexture(string service, string operation, Dictionary <string, string> parameters, Service.TextureCallback callback)
    {
        if (Configuration == null)
        {
            UnityEngine.Debug.LogError("[Stellarium] Configuration file not set");
            yield break;
        }
        string requestURL = string.Format("{0}:{1}/{2}/{3}/{4}", Configuration.host, Configuration.port, Configuration.APIPATH, service, operation);
        int    i          = 0;

        foreach (KeyValuePair <string, string> parameter in parameters)
        {
            requestURL += i == 0 ? "?" : "&";
            requestURL += parameter.Key + "=" + parameter.Value;
            i++;
        }
        UnityWebRequest uwr = UnityWebRequestTexture.GetTexture(requestURL);

        uwr.chunkedTransfer = false;
        yield return(uwr.SendWebRequest());

        callback(((DownloadHandlerTexture)uwr.downloadHandler).texture, uwr.error);
    }