C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[7]: クラス図自動作成(DoxygenとGraphvizの使用方法


(過去ログ 55 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■30518 / inTopicNo.1)  クラス図自動作成(DoxygenとGraphvizの使用方法
  
□投稿者/ ふくちゃん (12回)-(2008/12/25(Thu) 15:26:39)

分類:[.NET 全般] 

場所違いでしたらすいません。クラス図作成などは皆さん経験あると思いましたので、
こちらで質問させていただきます。

クラス図作成ソフトにDoxygenとGraphvizがあるのはご存知でしょうか?

ソースからクラス図を作成してくれる便利なソフトだそうです。



いろいろなページを参考にしながら以下の二つを入手、インストールしたのですが、
クラス図の作成がうまくいきませんでした。
graphviz-2.20.3.msi
doxygen-1.5.7.1-setup.exe
インストールは基本的には[次][同意]とどんどん設定していったのみです。


以下のページを参考にしました。
http://www.fides.dti.ne.jp/~oka-t/doxygen.html

上記サイトだけでは不十分と考え以下のパラメータも追加したのでが、
それでもクラス図作成がうまくいきません。

↓最新のdoxygenでは以下を指定すると日本語を自動ではいてくれるらしい
#エンコードの方法
#INPUT_ENCODING = UTF-8
INPUT_ENCODING = CP932


何か足りない設定などがあるのでしょうか?
ご存知の方いらっしゃいましたら教えてください。
引用返信 編集キー/
■30541 / inTopicNo.2)  Re[1]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ 読者 (1回)-(2008/12/25(Thu) 23:19:47)
No30518 (ふくちゃん さん) に返信
ソースへのコメント対応はされました?
引用返信 編集キー/
■30554 / inTopicNo.3)  Re[2]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ ふくちゃん (13回)-(2008/12/26(Fri) 09:23:42)
No30541 (読者 さん) に返信
> ■No30518 (ふくちゃん さん) に返信
> ソースへのコメント対応はされました?

お返事ありがとうございます。
ソースへのコメント対応は行っております。

Let's use doxygen! 様のホームページのサンプルで実行しましたが、
クラス図の作成はできませんでした。

http://www.fides.dti.ne.jp/~oka-t/doxygen.html

中段↓

サンプル
lei_fileutil.h
fileio.cpp

この2つのファイルを実行すると、出来上がったHTML形式に、クラス図のみない状態ですね。


なにか他に忘れていることがあるのでしょうか?
引用返信 編集キー/
■30611 / inTopicNo.4)  Re[3]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ 通りすがり (41回)-(2008/12/27(Sat) 22:55:10)
No30554 (ふくちゃん さん) に返信

lei_fileutil.h
fileio.cpp
と,配布されていたdoxygen.confを使いましたが,グラフは出力されました.
graphvizは動作していそうな気配はしますか?
(クラス図だけ出ないのか,他のグラフィックも出力されないかの切り分けをした方がよいかと.)
引用返信 編集キー/
■30725 / inTopicNo.5)  Re[4]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ ふくちゃん (14回)-(2009/01/05(Mon) 09:10:27)
> graphvizは動作していそうな気配はしますか?
> (クラス図だけ出ないのか,他のグラフィックも出力されないかの切り分けをした方がよいかと.)

正月休みを挟んでしまい、申し訳ございません。
すべてのグラフィック関連が出ていないので、graphvizは動作していないのかと思います。
インストールするだけでなく、実行しておく必要があるんですね?

実際にやってみます。
引用返信 編集キー/
■30726 / inTopicNo.6)  Re[5]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ ふくちゃん (15回)-(2009/01/05(Mon) 11:54:06)
無事出力することができました。
解決方法としては以下の方法を使いました。

Doxygenの最新版を確認したところ、1つバージョンがあがっていたので、
インストールしなおし、以下2点を設定してみました。

HAVE_DOT YES 
DOT_PATH C:\Program Files\Graphviz 2.21\bin





ただし、まだ問題がありまして、理想的なUML図が作成されません。
以下ソースになります。
クラス2 クラス3はUML図にBMPクラスが表示されているのですが、
std::vectorを使用すると、どうもUML図に表示されない?という現象が起きています。

何か解決策はございますでしょうか?
お願いします。



#include <vector>

/*-----------------------------------------------------------*/
/** イメージクラス
 */
/*-----------------------------------------------------------*/
class BMP
{
	BYTE*	img;				///< イメージ
	int	wid;					///< イメージ幅
	int	hei;					///< イメージ高さ
};

/*------------------------------------------------------------------*/
/** クラス
 * 
 */
/*------------------------------------------------------------------*/
class TextStr_t
{
public:

	std::vector<BMP> bmpdatas;			///< 画像郡
};

/*------------------------------------------------------------------*/
/** クラス2
 * 
 */
/*------------------------------------------------------------------*/
class TextStr_t2
{
public:
	BMP bmpdata;						///< 画像
};


/*------------------------------------------------------------------*/
/** クラス3
 * 
 */
/*------------------------------------------------------------------*/
class TextStr_t3
{
public:
	BMP bmpdata[10];					///< 画像郡
};

引用返信 編集キー/
■30792 / inTopicNo.7)  Re[6]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ 通りすがり (42回)-(2009/01/06(Tue) 22:54:20)
2009/01/06(Tue) 23:00:33 編集(投稿者)
2009/01/06(Tue) 23:00:29 編集(投稿者)

No30726 (ふくちゃん さん) に返信
> 無事出力することができました。
おめでとうございます.


> ただし、まだ問題がありまして、理想的なUML図が作成されません。
doxygenでのクラス図出力ですが,どうも「クラス図」ではなく「コラボレーション図」としての出力になるようなのです.
よって,
・継承しているクラスがある
・参照しているクラスがある
などのように,関連するクラスがないと図が出てくれないようです.
クラス2,クラス3も,BMPのメンバがなければクラス図は出てくれません.

クラス図だけ出す方法をいつも探しているのですが,私もわかりません…

追記:
BUILTIN_STL_SUPPORTをチェックすると,いくらか出てくれるようです.
http://www.doxygen.jp/config.html#cfg_builtin_stl_support
引用返信 編集キー/
■30808 / inTopicNo.8)  Re[7]: クラス図自動作成(DoxygenとGraphvizの使用方法
□投稿者/ ふくちゃん (16回)-(2009/01/07(Wed) 09:10:51)
> 追記:
> BUILTIN_STL_SUPPORTをチェックすると,いくらか出てくれるようです.
> http://www.doxygen.jp/config.html#cfg_builtin_stl_support

おおお!ばっちり出力できました!
きれいにstd::vectorもツリーとして表示されるようになりました。
ありがとうございます。^^

念のため私が設定しましたProjectとDOTの内容を記述しておきます。
極端にまずいところがあれば訂正やアドバイスをください。
ありがとうございました。

#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = File
PROJECT_NUMBER = 1.0
OUTPUT_DIRECTORY = E:\Works\Doxygen\OUTPUT
CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = Japanese
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
"The $name widget" \
"The $name file" \
is \
provides \
specifies \
contains \
represents \
a \
an \
the
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = YES
STRIP_FROM_PATH = /Users/dimitri/doxygen/mail/1.5.7/doxywizard/
STRIP_FROM_INC_PATH =
SHORT_NAMES = YES
JAVADOC_AUTOBRIEF = YES
QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 8
ALIASES =
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = NO
EXTENSION_MAPPING =
BUILTIN_STL_SUPPORT = YES
CPP_CLI_SUPPORT = NO
SIP_SUPPORT = NO
IDL_PROPERTY_SUPPORT = YES
DISTRIBUTE_GROUP_DOC = NO
SUBGROUPING = YES
TYPEDEF_HIDES_STRUCT = NO
SYMBOL_CACHE_SIZE = 0

#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
MSCGEN_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
DOT_FONTNAME = "MS UI Gothic"
DOT_FONTSIZE = 10
DOT_FONTPATH =
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
UML_LOOK = YES
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = YES
CALLER_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
DOT_PATH = "C:\Program Files\Graphviz 2.21\bin"
DOTFILE_DIRS =
DOT_GRAPH_MAX_NODES = 50
MAX_DOT_GRAPH_DEPTH = 0
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = NO
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -