ブログを初めて2ヶ月ぐらい、最近全然更新してませんが...

こんにちは、お久しぶりですねすわわです。

 

 

なんで更新してないかって言うと書きたいことはいっぱいあるんですけどソースコード公開するいい方法わかんなくて保留とか特にネタがないとかめんどいとか()

 

時間は限られてますし、私には画像処理のお勉強だったりアプリ開発だったり、さらに言えばこのブログじゃないとこ(すわわの中身公式のページ)で全力でソースコードを公開しようと頑張ったり、作品作って公開したりとやってるので、、

 

ということでした~(所要時間4分)

 

また読みに来てくださいね

(C#)久しぶりの、、描画ライブラリ進捗報告です!!

お久しぶりです、すわわです><

今日は久しぶりに最近作ってたライブラリを使った作品を、、
使いやすくなるよう初心者なりに頑張ってみました
ご指摘があればぜひ...(このままではライブラリないので使えません汗)


以下、コードです。

using System;
using static System.Math;
using System.Drawing;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MyDrawing;
using static MyDrawing.Math;
using static MyDrawing.MyGraphics;
using static art20181024.Form1;

namespace art20181024
{
    struct ROTATE
    {
        public Vector vector1, vector2;
        public PointD O;
        public ROTATE(Vector v1, PointD o)
        {
            vector1 = v1;
            vector2 = vector1 * -1;
            O = o;
        }
    }
    struct Pentagon
    {
        public Vector[] vectors;
        public PointD O;
        public Pentagon(Vector v, PointD o)
        {
            double a = v.Angle();
            vectors = new Vector[5];
            for (int i = 0; i < 5; i++)
            {
                vectors[i] = new Vector(TWO_PI * i / 5 + a) * v.Norm();
            }
            O = o;
        }
    }
    struct Polygon
    {
        public Vector[] vectors;
        public PointD O;
        public Polygon(Vector v, int n, PointD o)
        {
            double a = v.Angle();
            vectors = new Vector[n];
            for (int i = 0; i < n; i++)
            {
                vectors[i] = new Vector(TWO_PI * i / n + a) * v.Norm();
            }
            O = o;
        }
    }
    public class MainCode
    {
        static Polygon[,] polygons = new Polygon[20, 10];
        public static void SetUp()
        {
        }
        public static void Draw()
        {
            //TranslateTransform(width / 2, height / 2);
            double t = time;
            PointD O = new PointD(width / 2, height / 2);
            for (int i = 0; i < 20; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    PointD p = new PointD(Map(i, 0, 20, -50, width + 50), Map(j, 0, 10, -50, height + 50));
                    polygons[i, j] = new Polygon(new Vector(PCM(0.05, t, Map(PointD.Dist(O, p), 0, 500, 0, TWO_PI))) * 50, 6, p);
                }
            }
            foreach (var polygon in polygons)
            {
                Pen pen = new Pen(Color.Black);
                for (int i = 0; i < 5; i++)
                {
                    DrawLine(pen, (PointF)(polygon.O + polygon.vectors[i]), (PointF)(polygon.O + polygon.vectors[i + 1]));
                }
                DrawLine(pen, (PointF)(polygon.O + polygon.vectors[5]), (PointF)(polygon.O + polygon.vectors[0]));
                PointF[] ps = new PointF[6];
                for (int i = 0; i < 6; i++) { ps[i] = (PointF)(polygon.O + polygon.vectors[i]); }
                FillPolygon(new SolidBrush((Color)new MyColor(true, ColorMode.HSV, (Map(PointD.Dist(O, polygon.O), 0, 500, 160, 220)), (Map(PointD.Dist(O, polygon.O), 0, 500, 0, 355) + t*3) % 360, 0.5, 0.5)), ps);
            }
        }
    }
}

f:id:SWAco:20181025031229g:plain

ProcessingとOpenGLではじめての3Dアニメーション><

こんにちは、すわわです。

 

 

ずっと前からアニメーションに興味があったわけなんですが、最近Processingというのに出会ってしまって、やってみようかということになりました。

 

これまでは、C#でしかアニメーションを作ってこなかったんですが、とにかくだるいし、なにより3Dアニメーションが大変そうだったので長い間保留にしてました。

 

 

これまでは2Dのアニメーションで十分だったのですが、なぜ最近3Dを勉強したいのかというと、化学で結晶構造について勉強して、どうにかこれをアニメーションにできないかと思いまして、、

 

dave 🐝💣 (@beesandbombs) | Twitter

鯵坂もっちょ🐟 (@motcho_tw) | Twitter

などの方に大きな影響を受けています。数学や化学、そして単純に芸術としてのアニメーションってすごいなと。

 

 

これから、私が勉強したことをブログに書いていけたら幸いです。がんばります、応援よろしくお願いします><

 

 

以上です