2017年11月07日

簡単にロゴを作れるソフト、LogoMaker を作りました

scr_lm2.png

このスクリーンショットのような、簡単なロゴを作成できるツールを作りました。自分で使うために作ったのでマニュアルは書いてませんが、そんなに複雑な機能はないので、大丈夫だと思います。疑問やバグなどがあればコメントして下さい。

scr_lm1.png

こういった、複数行の文字列画像も作れます。

ダウンロード

実行には Java8 が必要です。ソースファイルも同梱してあります。

17/11/08 19:56 追記 zipファイルにマニュアルを追加して、差し替えました。lm.jar を実行することで起動します。manual.txt が簡単な説明書きです。

posted by Takenoko at 22:38| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2015年09月08日

bdf2bmp をコンパイル

bdf2bmp をコンパイルしようとしたところ、エラーが出た。cc ではダメなのかと clang にするもエラー。"‘getline’ と型が競合しています"と表示される。stdio.h に同名の関数があるらしい。そこで、bdf2bmp.c 内の getline を全て getline2 という適当な名前に置換すると無事成功。このソフトの最終更新が 2001 年なので、その間に関数が追加されたのだろうと思う。
ラベル:font C software
posted by Takenoko at 23:38| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2015年09月01日

壁のばし法で迷路生成してみた 続き

昨日の壁のばし法で迷路生成してみたでは、壁を伸ばす方向をランダムに選んでから、時計回りに判定していたんですが、それだと確率が偏ってしまうことに気づきました。配列をシャッフルして方向を選ぶ方式にしたので、今度は偏らないと思います。

maze_bl2.png

maze150831.zip

実行ファイルとソースファイルが入ってます。GUI も少しだけ手直ししました。

posted by Takenoko at 08:23| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2015年08月31日

壁のばし法で迷路生成してみた

maze_bl.png

maze_th.png

壁のばし法で迷路を生成するコードを書きました。伸ばす先が無くなるまで伸ばす方法と、その前に違う壁を伸ばす方法があるようですが、今回は前者の方法を使いました。以下は迷路生成部分のコードです。



今回は、コメントも書いて見ました。ここに載せていない GUI 部分には書いてませんが。乱数は XorShift を使っていますが、java 標準の乱数でもいいと思います。

maze150830.zip

実行ファイルとソースファイルが入っています。

続きを読む
posted by Takenoko at 08:26| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2015年03月13日

GlassPane でアニメーション

タイトルの通り。忘れないようにソースをここに。Java の Package 名は単数形でいいらしい。this は省略したほうがよかったかも。


15/03/19 追記
GlassPane は JComponent でいいらしいので修正した。

ラベル:java
posted by Takenoko at 23:40| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2015年02月01日

Java でダンジョン自動生成してみた 続き

Java でダンジョン自動生成してみた の続きの記事です。

解説はいずれ書きます。

一年経ちましたが、嘘はついてないし。

dun_gene.png


この、区画分けをしないダンジョン生成法は、

  • A. 部屋を一つ作る。
  • B. 部屋を一つ作り、ランダムに選択した部屋と通路をつなぐ。
  • C. B を繰り返す。
  • D. ランダムに選んだ二つの部屋をつなぐ。
  • E. D を何度か繰り返す。
という単純なやり方になっています。この方法は、通路を繋ぐ際、途中で他の部屋や通路に接触した時点で部屋が孤立しない事が保証されます。

実行ファイルとソースファイルをダウンロード

相変わらずマニュアルは書いていませんが、右側の『生成条件設定』の項目名にマウスを合わせると、簡単なツールチップが表示されます。

以前のコードは、java のレイアウトについて理解していなかった事もあり、linux だと表示が崩れたんですが、今回は環境によらずに表示されると思います。この PC 以外では試していませんが。

posted by Takenoko at 20:17| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2014年11月22日

JTextPane で、String 追加直後に一番下までスクロール

今までは Eclipse を使って java を書いていましたが、Eclipse が、というかWindowBuilder が非常に重いので、最近はテキストエディタで書いてます。まあ PC の性能が足りないせいなんですが。

JScrollPane 内の JTextPane を下までスクロールする方法はいくつかあるようですが、そのどれも、String を追加した直後に普通にスクロールさせると、最下のほんの少し手前までしか行きません。それで悩んだのですが、EventQueue.invokeLater を使うとうまくいきました。以下はサンプルです。



JTextPane 以外でもこういう現象は起こるかもしれません。その時は invokeLater を使えば解決できるかもしれません。invokeLater についてはまだよく理解できていません。
posted by Takenoko at 20:25| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2014年04月27日

Mint 13 Xfce で Eclipse 3.7 を使ったときのメモ

少し前に、Linux で Eclipse 4.2 のダウンロード,インストール,設定,日本語化,基本操作 を見ながら Eclipse をインストールしました。バージョンは 3.7 にしました、新しいバージョンは重いらしいので。WindowBuilder もインストールしました。WindowBuilder (GUIビルダ) を使ってみました。(前編) | 書きかけの技術書+ を参考にしました。

プロジェクトを実行しようとすると、java.awt.HeadlessException なんていうエラーが出ました。試行錯誤の結果、JRE の定義に oracle の java を追加して、プロジェクトでそれを使用するように設定すると、普通に実行できました。最初から入っている openjdk でも、設定次第では使えるのかもしれませんが。

WindowBuilder のデザイナが重いです。Eclipse は使い始めたばかりなので、慣れるまで大変そうです。

posted by Takenoko at 23:12| Comment(0) | TrackBack(0) | programming | このブログの読者になる | 更新情報をチェックする

2014年04月19日

パネルにハードディスクの温度等をアイコンで表示するコードを書いた

Linux Mint 13 Xfce のパネルにシステムモニタを表示したかったので、xfce4-systemload-plugin をインストールしたんですが、パネルに追加しようとすると、"プラグインは最近 60 秒以内に 1 回以上再起動されました。"などどいうわけのわからないエラーメッセージが出て追加できませんでした。他の xfce4 プラグインもインストールしてみたんですが、やはり同じエラーが出ます。それ以外のシステムモニタもいくつかインストールしてみたんですが、パネルに追加はできても、動いてくれない。仕方ないので、自分で作りました。

Monitor1

左の 3つのアイコンが自作で、CPU 使用率、メモリ使用率、ハードディスクの温度の順になっています。左の 2つのアイコンの見た目をなんとかしたいんですが、デザインのセンスが無くて、どうすればいいのかさっぱりわかりません。あとでログイン時から常駐させる方法を探します。

以下がコードです。hddtemp に渡すパスは、/dev/sda/ とかでもいいと思います。この環境だと、sda になったり sdc になったりするので、変化しないパスを渡しています。




Python や hddtemp といった必要なものは最初から入っていたらしく、何もインストールせずに動きました。試行錯誤している時にそれらをインストールしていたのかもしれませんが。

PyGTKでシステムトレイを使用してメニューを表示する
PyGTKでシステムトレイのアイコンを切り換える(前半)
raw data(バイナリ列や数値列)を画像として表示する
Python Imaging Library Modules

等のページを参考にしました。

posted by Takenoko at 23:04| Comment(0) | TrackBack(0) | programming | このブログの読者になる | 更新情報をチェックする

2014年01月28日

Java でダンジョン自動生成してみた

Windows XP のサポート期限が切れるので、Linux に移行しなければならなくなった。問題が山積みで、その一つが、Visual Studio が使えなくなるという事。今まで Windows しか使っていなかったので全く意識していなかったけど、これからのプログラムは、少なくとも Windows と Linux の両方で動くようにする必要がある。

という事で、Java を始めてみた。とりあえず、壁が薄いダンジョン自動生成のコード を、ローグのように壁を厚くして、Java で書くことにした。Java と C# は、世間の評判通りにとてもよく似ていて、コードを書くのは違和感が殆ど無い。メソッドの先頭が小文字なのが少し気になるけど。IDE は NetBeans を使用したが、デザイナの勝手が Visual Studio とは全く違って、GUI 部分に物凄く手間取った。

以下、生成したダンジョン。

image/_photos_uncategorized_2014_01_28_mgj01.png image/_photos_uncategorized_2014_01_28_mgj02.png image/_photos_uncategorized_2014_01_28_mgj03.png image/_photos_uncategorized_2014_01_28_mgj04.png

区画分けする方法より、この方が好き。

起動するための jar と、ソースファイル。「MG140128.zip」をダウンロード

解説はいずれ書きます。

15/02/01 追記 続き を書きました。ソースと実行ファイルも続きからダウンロードできます。

posted by Takenoko at 22:14| Comment(0) | TrackBack(0) | programming | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。