下記のサイトでglGenTextures()でテクスチャオブジェクトの名前を取得せずに、いきなりglTexImage2Dをコールしているコードがあります。
http://marina.sys.wakayama-u.ac.jp/~tokoi/?date= …

コードの意味としては「無名のテクスチャオブジェクト」になるという意味であっていますでしょうか?

また「無名のテクスチャオブジェクト」となる場合、使用方法としては(無名のため)一時的な使用しか
できないものなのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

OpenGLの「テクスチャ名」という呼称が僕はあまり良くないと思うのですが、テクスチャ名(テクスチャID、テクスチャ ハンドル)の0番は glGenTextures() を呼び出さなくても最初から使えるテクスチャ名になっています。


テクスチャを複数生成して、処理対象を実行時に切り替える必要がある場合は、glGenTextures() を使ってテクスチャ名を生成し、glBindTexture() にカレントのテクスチャ名を指定してから各種テクスチャ操作関数を呼び出す必要がありますが、URL のサンプルではシャドウマップ用の1枚しか使っていないので、デフォルトの生成済み0番テクスチャに対して glTexImage2D() などで処理を行なっている、というだけの話です。
なので、0番テクスチャは他のテクスチャ オブジェクトと同じように特に制限なく使えるはずです。ただ、glGenTextures(), glDeleteTextures() を呼ばなくてもいい分、統一的な生成・解放処理をするのに困るので、大規模なプログラムではあまり使わないと思いますが……


下記に床井先生による詳しい解説が載っているので熟読してください。

http://marina.sys.wakayama-u.ac.jp/~tokoi/?date= …
    • good
    • 0
この回答へのお礼

詳しい説明ありがとうございます!!
URL確認してみます。

お礼日時:2011/04/24 09:38

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q平均GLと斜線制限について

教えてください。
平均GLと北側斜線 平均GLと道路斜線の関係です。
平均GLが設計GLよりも下がってくる時

1.北側斜線はその平均GLからですか?
2.高低差が大きい時その平均GL毎に北側斜線を計測するのですか?
図面上で2本の北側斜線のラインが出るって事ですか?

3.道路斜線は平均GLじゃなくて道路高さからですか?
(その物件は高低差はほとんどないんですが
平均GLは1m以上下がります)

よろしくお願いします。

Aベストアンサー

こんにちは
>1.北側斜線はその平均GLからですか?
そうです平均地盤面からです。
ただし、隣地が平均地盤より1m以上高ければ(h-1)/2だけ緩和されます。

>2.高低差が大きい時その平均GL毎に北側斜線を計測するのですか?
>図面上で2本の北側斜線のラインが出るって事ですか?
そうです平均地盤ごとです。

>3.道路斜線は平均GLじゃなくて道路高さからですか?
道路中心の高さよりの計算になりますので平均地盤は関係ありません。
道路が敷地より1m以上下がっていれば他の斜線と同じく緩和があります。

Q教えて下さい。C言語printf("%d-%dは%dです。")でのコンパイル結果について

はじめまして。最近趣味でプログラムを始めました。

参考書を見ながら、printfを使って「3-2は1です。」と表示しようとしました。
見ながら打ち込んで行ったのですが、

printf("%d-%dは%dです。", 3, 2, 3-2 ); を
printf("%d-%dは%dです。")のまま、コンパイルしてしまったのですが
計算結果は
「1638280-4198563は1です。」との結果がでました。
これは何が表示されたのでしょうか?

「%d-%dは%dです。」と同じ書式設定の物を打ち込んでいるのになぜ違う
数字の羅列が出たのでしょうか?

参考書のプログラムは下記の通りでした。
#include <stdio.h>

int main(void)
{
printf("%d-%dは%dです。", 3, 2, 3-2 );
return 0;
}

どうぞご回答よろしくお願いします。

Aベストアンサー

ちょっと専門的な話になります。

関数を呼び出すとき、内部では
引数1: XXXX
引数2: YYYY
引数3: ZZZZ
....
という引数を渡すための領域を用意して、関数を呼び出します。
関数側では、この領域から引数を得ます。
int func(int a,int b)
という関数だったら、引数は2個なので
z=func(101,102)
とあったら
引数1: 101
引数2: 102
という領域を用意して、関数側では
a←引数1(101)
b←引数2(102)
となります。


ところが、printf の様に引数の数が一定でない関数の場合、引数がいくつ渡されたかが「わかりません」
というのがC言語の仕様です。

引数の数は、何か別の方法で知らせる必要があります。
 引数に「引数の数」を入れる
  func( 3,101,102,103) /* 最初の3は引数の数 */
 特定の引数を「これが最後」という意味に使う
  func( 101,102,103, -1) /* -1 が来たら終わり */

printfの場合は、「書式文字列を解析する」ことで、必要な引数を知ります。

printf("%d-%dは%dです。", 3, 2, 3-2 );
だと
引数1: "%d-%dは%dです。" (へのポインタ)
引数2: 3
引数3: 2
引数4: 1 (3-2の計算は、関数に渡す前に計算される)
となります。

このとき、printf側では
・引数1の書式文字列を得る
・書式文字列を解析する
 → %d が3つあるから、 intが3つ必要
・1つ目のintとして 引数2 を得る
・2つ目のintとして 引数3 を得る
・3つ目のintとして 引数4 を得る
と動作します。

では
printf("%d-%dは%dです。" );
だとどうなるか?

引数1: "%d-%dは%dです。" (へのポインタ)
はいいでしょう。
このとき、printf側では
・引数1の書式文字列を得る
・書式文字列を解析する
 → %d が3つあるから、 intが3つ必要
・1つ目のintとして 引数2(!?) を得る
・2つ目のintとして 引数3(!?) を得る
・3つ目のintとして 引数4(!?) を得る
と動作します。

引数2、3、4は用意されていないのに、そこから値を得ています。
用意されていない領域でも、アクセスしようとしたらエラーにならずにアクセスできる。
これもC言語の特徴です。
/* その領域がOSの保護領域等の場合は、エラーになることがあります。
 ただ、これは、OSが発生させるエラーであって、C言語としてのエラーではありません */

このとき、引数2、3、4には何が入っているかわかりません(不定)
前に別な関数を使ったときの残りかもしれないし、何かの変数が使っている領域かもしれません。
今回はたまたま
引数2: 1638280
引数3: 4198563
引数4: 1 (これはたまたま1だった、というだけで、3-2が入っていたわけではない)
だった、ということです。

これを完全に防ぐ方法は「ありません」。
プログラマが気をつける以外に方法はありません。
一部Cコンパイラには、書式文字列と引数の数を比較して、数や型に不一致があると「警告」を出すものもあります。
/* gcc に -Wall オプションを付けるとか */
ですが、これも printf(s,1,2,3) 等と変数を使われたら対応できません。



余談ですが。
printf("%d-%dは%dです。", 3.0, 2.0, 3.0-2.0 );
も期待する出力にはならないでしょう。
実は、数だけではなく、引数の型もわかりません。
そのため、%d→int と決め付けて値を得ます。
このとき 3.0→3と変換されるのではなく、「 3.0の内部のビット表現→それと同じビット表現のint 」と変換されるため、「3」とはまったく別の値になります。

ちょっと専門的な話になります。

関数を呼び出すとき、内部では
引数1: XXXX
引数2: YYYY
引数3: ZZZZ
....
という引数を渡すための領域を用意して、関数を呼び出します。
関数側では、この領域から引数を得ます。
int func(int a,int b)
という関数だったら、引数は2個なので
z=func(101,102)
とあったら
引数1: 101
引数2: 102
という領域を用意して、関数側では
a←引数1(101)
b←引数2(102)
となります。


ところが、printf の様に引数の数が一定でない関数の場合、引数がいくつ渡されたかが「わかりません」...続きを読む

Q新築工事完成間際ですが、設計GLについて、教えてください。 外構に着手したところ、業者から連絡、 設

新築工事完成間際ですが、設計GLについて、教えてください。
外構に着手したところ、業者から連絡、
設計GLに合わせて整地すると、隣地境界ブロック塀が、全体に浅く、設計GLが、ブロック塀の一番下の段の底面と同じ高さになってしまう、つまりブロック塀が、ほとんど地中にもぐらない、ひと蹴りで倒れてしまう危険な状況。
地面掘ってブロック塀をつくりなおすか、せめてブロック塀を補強することを、議論していますが、費用は全て施主持ちであることを、業者は主張しています。
設計GLの設定が初めから低すぎた為に、このような問題が生じたのだと考えると、これは、業者の責任なのでないかと考えますが、正しいでしょうか?
因みに、工事着手前に設計GLが、路面+300であることの説明はうけていますが、その際に、ブロック塀のことは何も説明がありませんでした。

また、業者によれば、着手時点のGLに戻しただけだと主張してますが、その割には、残土すき取り料金としてトラック8台分20万円を請求されてます。
GLを下げてないのにその様な残土が、生じるものでしょうか?業者は、基礎を掘った分だと言いますが、普通は基礎を掘った残土を利用して、GLを上げると言う話も聞きます。
この辺りに詳しい方、教えてください。

新築工事完成間際ですが、設計GLについて、教えてください。
外構に着手したところ、業者から連絡、
設計GLに合わせて整地すると、隣地境界ブロック塀が、全体に浅く、設計GLが、ブロック塀の一番下の段の底面と同じ高さになってしまう、つまりブロック塀が、ほとんど地中にもぐらない、ひと蹴りで倒れてしまう危険な状況。
地面掘ってブロック塀をつくりなおすか、せめてブロック塀を補強することを、議論していますが、費用は全て施主持ちであることを、業者は主張しています。
設計GLの設定が初めから低すぎた...続きを読む

Aベストアンサー

GLには、大別して、2種類あります。

「設計GL」と「現状GL」です。

「設計GL」=設計上の仮のGL(紙の上の便宜上のGL)
「現状GL」=実際の敷地でのGL
      (但し、現状の敷地もあちこちで、レベル(高さ)が、違いますので、この敷地では、
       この点の高さを、「現状GL」と設定する、と、設計者=工事監理者が決めます。
       決める要因は、工事中に高さの変動が無いところ。このため、前面道路のマンホールの
       蓋のレベルを基準として、これを「現状GL」と設定したりいます。)

1)「設計GL」を使う理由

 設計は、紙の上で行います。このため、高さ関係を決める基準の線を設定する必要があります。
 これを、「便宜的」に決めたものが、「設計GL」です。
 この基準の線から下の方は、「設計GL」から〇〇ミリの表示なので、「設計GLから、〇〇ミリ掘る必要がある。」と
 分かります。
 2階の床の高さが、「設計GL」から〇〇ミリと表示して、2階の床のレベルが、「設計GL」から〇〇ミリの高さにある、と
 分かります。

 詰まり、設計作業を行う上で、高さ関係のすべての数値の基準に「便宜的」に設定したものが、「設計GL」です。

 このため、この時点では、現地の「現状GL」と「設計GL」は、全く関連性がありません。

2)「現状GL」を使う理由

 先に述べたように、「便宜的」に、勝手に設定した「設計GL」を現地の現状に合わせる作業が
 必要となります。
 これが、「現状GL」の設定です。
 紙の上の(机上の)空論を、実際の現状に、対応させるための作業で、本来であれば、
 設計した建築士か、工事監理者(工事管理者ではありません。)が立ち合いのもと
 決定されます。
 
 実際にどのようにするか、と言うと、現状を把握し、「設計GLを現状GLから300ミリ上に設定する。」といった、
 決めごとをします。
 この時点で、前面道路のマンホール天端レベルから、空中に300ミリ浮いた高さを、
 設計上の「設計GL」に設定したことになります。

3)お話の内容

 説明がくどくて申し訳ありませんが、ご質問の内容から、HMが、上記の記載事項を
 全く理解しておらず、しかも、上記の流れに沿う「現場での確認作業」を全く
 していない、と思われます。

 仮に、「現場での確認作業」をしているのであれば、その記録が、追跡可能な形で
 残されていなければならず、まず、その記録を提出させるところからだと、思います。

 「設計GL」と「現状GL」の確認は、基本中の基本で、それを怠った場合、ご相談内容の
 ような事例が発生するのは、当然です。

 また、「設計GL」と「現状GL」の調整をし、「決定」をし、「責任を持つ」のは、
 建築士であり、工事監理者です。

 現状がどのような状態になっていても、そうなった責任は、施主側には無い(一般的には)と
 思います。

 上記、(一般的には)の意味は、現場を実際に見ておらず、また、打ち合わせ内容も
 把握しておらず、しかも、ここに提示された情報が全てか、確認できない、と言う
 意味です。

 長くなってしまいましたが、上記を良く理解され、業者に
 対応されたら、と思います。

 頑張ってください。

GLには、大別して、2種類あります。

「設計GL」と「現状GL」です。

「設計GL」=設計上の仮のGL(紙の上の便宜上のGL)
「現状GL」=実際の敷地でのGL
      (但し、現状の敷地もあちこちで、レベル(高さ)が、違いますので、この敷地では、
       この点の高さを、「現状GL」と設定する、と、設計者=工事監理者が決めます。
       決める要因は、工事中に高さの変動が無いところ。このため、前面道路のマンホールの
       蓋のレベルを基準として、これを「現状GL」と設定し...続きを読む

QOpenGLで描画するテクスチャのアルファ値(透明度)を変更したい

初めて質問させていただきます、tri-oと申します。

現在OpenGLでの2D描画プログラムを書いています。
ある画像を描画する時、その画像全体のアルファ値に、任意の値を乗算して、全体の透明度を変更したいのですが、やり方がわかりません。
例えば、キャラクターが書いてある画像があって、時間が経つ毎に透明度が変わり、徐々に出現するようなプログラムを書きたいのです。

色々と検索してみたのですが、目的のページにたどり着けませんでした。
ご存知の方いらっしゃいましたら、ご回答よろしくお願いします。

Aベストアンサー

まだ、OpenGLはあまりやってないので詳しいことは
分からないんですけど、

glBegin( );

//------この部分------//
glColor4f( );
または
glColor4fv( );
//------この部分------//

glEnd();

で、出来ると思います。
自分は、これで出来ました。

QイーモバイルのGL01Pを格安simで接続

イーモバイルのGL01Pを格安simで接続したいのですが、GL01Pの設定方法がわかりません・・

詳しい方、教えてください。

Aベストアンサー

https://kumopan2.wordpress.com/2012/05/30/sim%E3%83%95%E3%83%AA%E3%83%BC%E3%82%92%E3%81%84%E3%81%8B%E3%81%95%E3%81%AA%E3%81%91%E3%82%8C%E3%81%B0gl01p%E3%81%AEapn%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%80%82/

Qリアルタイムで多数の3角形ポリゴン(2D)を描画したい

リアルタイムでテクスチャを貼った多数の3角形ポリゴン(2D)をアルファブレンドを加味して描画したいのですが、OpenGL,DirectX等は使わずに自前のコードで実装したいのです。参考になるアルゴリズムを紹介したサイト、ソースコードなどを掲載しているサイトなどありましたら教えてください。検索のヒントになるワードでも結構です。お願いします。

Aベストアンサー

問題になるのはポリゴンを、どの様にしてピクセルに変換するかですかね?
この問題は「あるピクセル位置はポリゴンの内部なのか」を判定する問題だといえます。

問題の解き方としては、
1) ピクセル位置を固定しながら全てのポリゴンを探索して判定する
レイトレーシング(ray tracing)的なアプローチと
2)ポリゴンを固定しながら、全てのピクセル位置を探索して判定する
ラスタライズ(Rasterize)的なアプローチ
があります。

ちなみにOpenGLとかDirextXが採用しているのは
後者のラスタライズ的なアプローチになります。

古典的で簡単で未だ馬鹿にできない(らしい)手法として
3) スキャンライン(scan line)的なアプローチがあります
スクリーンにおいて水平な直線とポリゴンの各辺から、交点2つを求めると
2点の間がポリゴンの内部になるという手法です。

ポリゴンを固定しながらピクセル位置を特定するので、
ラスタライズ的なアプローチともいえますね。

ちなみにラスタライズの手法は[1]の記事が色々紹介しています。
[1] http://spin.s2c.ne.jp/stoday03.html

問題になるのはポリゴンを、どの様にしてピクセルに変換するかですかね?
この問題は「あるピクセル位置はポリゴンの内部なのか」を判定する問題だといえます。

問題の解き方としては、
1) ピクセル位置を固定しながら全てのポリゴンを探索して判定する
レイトレーシング(ray tracing)的なアプローチと
2)ポリゴンを固定しながら、全てのピクセル位置を探索して判定する
ラスタライズ(Rasterize)的なアプローチ
があります。

ちなみにOpenGLとかDirextXが採用しているのは
後者のラスタライズ的なア...続きを読む

QGLについて…

新築図面等で基本となるGLですが…意味は分かるのですが一体どこから計るんでしょうか??色んな高さがあると何処がGLなのか分かりません(泣)宜しくお願い致します。

Aベストアンサー

>どこから計るんでしょうか??色んな高さがあると
の意味を理解しかねますが、次の説明で不明があれば補足してください。

新築完成後の敷地が水平であると仮定して説明します。

1.敷地の表面がGLです
2.予定地を測量して、道路より高い高さをGLに設計します。
 なお、道路より高く出来ない時は雨水を側溝に流すことができる高さをGLに設計します。
3.設計図の軒の高さ等はGLからの高さで表します。
4.設計図の天井などの高さは床からの高さで表します。
5.例えば2.で道路より150ミリメートル高くGLを設計した場合には
 GLを基準(±0)にして前面道路の中央に(-150)等と配置図に表示します。
6.ここまでの段階では、GLは設計上道路より150ミリ高いという抽象的なもので実体は存在しません。
7.工事が完成した時の敷地面が、見ることのできるGLです。
8.2.の測量時には、杭の頭に釘を打ち工事中に変化しないよう保護してベンチマーク(BMまたはKBM)を設置します。(境界杭等固定物で代用することもあり)
9.工事中はこのBMを基準にして施工します。

>どこから計るんでしょうか??色んな高さがあると
の意味を理解しかねますが、次の説明で不明があれば補足してください。

新築完成後の敷地が水平であると仮定して説明します。

1.敷地の表面がGLです
2.予定地を測量して、道路より高い高さをGLに設計します。
 なお、道路より高く出来ない時は雨水を側溝に流すことができる高さをGLに設計します。
3.設計図の軒の高さ等はGLからの高さで表します。
4.設計図の天井などの高さは床からの高さで表します。
5.例えば2.で道路より150ミリメートル高くGLを設計した場...続きを読む

Q3D→2Dの座標変換で、スクリーン(カメラ)の後ろの判定ができるか

こんにちは。

3Dの座標を2Dのスクリーン座標に変換するには

screen.x = Projection * world.x / world.z;
screen.y = Projection * world.y / world.z;

でいいと思うのですが、
問題は、その3D座標がスクリーン(カメラ)の後ろ側に
なってしまった時にその判定をしたいと思っています。

このままでは、カメラの後ろ側にその3D座標があっても、
2Dの位置は変わりません。

どのように計算すればよろしいのでしょうか?
よろしくお願い致します。

Aベストアンサー

>screen.x = Projection * world.x / world.z;
>screen.y = Projection * world.y / world.z;

このやり方だとworld.z<0がカメラの後ろ側の条件になるはず。
カメラ位置(0,0,0)、カメラ方向(0,0,1)で固定ということだと判断しました。

カメラの移動とかを考えるなら、
カメラの位置と方向からワールド座標をカメラ座標に変換、
投影モード(平行投影、透視投影)のパラメータからカメラ座標をビュー座標に変換、
スクリーンサイズからビュー座標をスクリーン座標に変換、
といった処理を行います。

Q突然!家の高さ(GL)が50cm以上高くなることが判明

今週中にも着工予定の者です。

表題の通りなんですが、このギリギリのタイミングで家のGLが
50cm以上高くなってしまう事を説明されました。

家は東向き3階建て、家前に半ビルトインの駐車場付き。
やや斜面(玄関を出ると右足側がやや下)に建築予定です。
家の前、道路までには3m程×家幅の余裕があります。

HMの説明では
「階段を2段くらい増やします。あとはスロープにして対応」
との事でした。

当初の予定では玄関前と駐車場は一続きの面でしたが
階段延長+スロープ付きとなると車の取り回しが不自由になります。
駐車後、助手席ドアを全開にできなくなります。

そこで、「GLが当初の高さになるように下げてもらいたい。」
とお願いした所、「斜線規制の関係で3F部分がほとんど無くなる」
との説明を受けました。

土地を上げて斜線規制に引っかかるのは分かりますが、
土地を下げて斜線規制に引っかかるのはなぜですか?

HMにも聞いたのですがどうも納得できません。
(残土処理の費用を浮かせるために我慢しろと言っているのでは?)
こんな風に考えてしまう私はやっぱり悪い人ですか?

専門家の先生方、どうぞお知恵を拝借願います。

今週中にも着工予定の者です。

表題の通りなんですが、このギリギリのタイミングで家のGLが
50cm以上高くなってしまう事を説明されました。

家は東向き3階建て、家前に半ビルトインの駐車場付き。
やや斜面(玄関を出ると右足側がやや下)に建築予定です。
家の前、道路までには3m程×家幅の余裕があります。

HMの説明では
「階段を2段くらい増やします。あとはスロープにして対応」
との事でした。

当初の予定では玄関前と駐車場は一続きの面でしたが
階段延長+スロープ付きとなると...続きを読む

Aベストアンサー

>土地を上げて斜線規制に引っかかるのは分かりますが、
土地を下げて斜線規制に引っかかるのはなぜですか?

この謎について、考えてみました(^^)
HMの言っている内容が正確にはわかりませんので、推測でございますが。

1、HMがどうやらチョンボったようである
2、HMは、どうにかして斜線をクリアしたいために土を盛ろうとしている
3、HMの説明、「階段を2段くらい増やします。あとはスロープにして対応」

以上のことから、恐らくHMがチョンボッた斜線は、道路斜線ではなく、高度斜線か北側斜線ではないかと思われます。
道路斜線は、道路の中心線の建物高さに規制がかかり、高度斜線、北側斜線は敷地の地盤面からの建物高さが規制を受けます。
でも3階建てということは、恐らく北側斜線ではなく高度斜線であると思われます。
高度斜線は全国どこでもというわけではなく、高度地区指定がある場合のみです。天空率での緩和も適用されません。
質問者様の敷地の場所が不明ですから、高度地区指定があるかどうかはわかりませんが、このように仮定しますと、HMの考えは。。。

・道路からの建物の高さは変更せずに、敷地に土を盛って、計算上の地盤面からの建物高さを下げようとしている

。。。のではないか、と思われます。

つまり、地盤面は50センチ上げるけど、家の高さは上げない。
なので、その場合、家が当初の予定よりも50センチ深く土に埋まることになる。
しかし、建物を上げずに土だけを50センチも盛るとなると、基礎の高さなども変更が必要になってきてしまいます。その辺がまだ謎ですが。
その辺どうするつもりなのか、部屋内側に影響などはあるのかなど、さらに良く説明を求めるべきです。
口頭ではなく、必ず文書や図面にて。
でも、玄関前の高さも上げようとしてるみたいですね。
そうなると、また謎が深まり。。

HMの営業マンだと、説明している本人が良くわかってない場合もあるので、設計者本人を現場に呼んで説明させましょう。たいがい断ると思いますが、強く言って、場合によっては設計部長から説明させましょう。

施工者がチョンボを隠すためにした事が、施主にさらなる(見えない)不利益をもたらすことは、ありがちです。
車の取り回しの不具合もさることながら、他にもっと重大な不具合をHMが説明していないことがないかどうか、冷静に広い目で見ることが肝要です。
が、なかなか難しいことでしょうから、市役所などの相談窓口や、知り合いに建築設計事務所の人がいたら相談するといいと思います。その場合、必ず、図面を見せて相談しましょう。文章や口頭では伝わりませんので。
NPOなどでも、相談にのってくれる団体があると思います。
建築士会などに問い合わせて探してみては?

結局、図面を見ないことには、謎が解けませんでした。
すみません。

>土地を上げて斜線規制に引っかかるのは分かりますが、
土地を下げて斜線規制に引っかかるのはなぜですか?

この謎について、考えてみました(^^)
HMの言っている内容が正確にはわかりませんので、推測でございますが。

1、HMがどうやらチョンボったようである
2、HMは、どうにかして斜線をクリアしたいために土を盛ろうとしている
3、HMの説明、「階段を2段くらい増やします。あとはスロープにして対応」

以上のことから、恐らくHMがチョンボッた斜線は、道路斜線ではなく、高度...続きを読む

QC#で、pictureBoxのオブジェクト?の横(width)と縦(height)を表示させたい

C#の文字列操作とフォームオブジェクトのプロパティについてわからないことがあります。

フォームに pictureBoxのオブジェクトを配置して、
名前をgazouにしました。

そのgazouの横(width)と縦(height)を表示させることを
させたいのですが、

NullReferenceExceptionはハンドルされませんでした。
オブジェクト参照がオブジェクト インスタントに設定されていません。

トラブルシューティングのヒント;
オブジェクト インスタンスの作成にはnewキーワードを使用します。
メソッドを呼び出す前に、オブジェクトがNullで良いかどうか確認して下さい。
この例外に関する一般的なヘルプを参照します。

と表示されました。以下、問題のソースです。

string s = String.Format("width=[{0}] height=[{1}]", gazou.Image.Size.Width ,
gazou.Image.Size.Height);

MessageBox.Show(s);

C#の文字列操作とフォームオブジェクトのプロパティについてわからないことがあります。

フォームに pictureBoxのオブジェクトを配置して、
名前をgazouにしました。

そのgazouの横(width)と縦(height)を表示させることを
させたいのですが、

NullReferenceExceptionはハンドルされませんでした。
オブジェクト参照がオブジェクト インスタントに設定されていません。

トラブルシューティングのヒント;
オブジェクト インスタンスの作成にはnewキーワードを使用します。
メソッドを呼び出す前に...続きを読む

Aベストアンサー

gazou.Imageがセットされていないのではないでしょうか?
gazouそのもののサイズならgazou.Width、gazou.Heightで取得できます。


人気Q&Aランキング

おすすめ情報