-
-
Notifications
You must be signed in to change notification settings - Fork 81
Matrixの種類
Kasugaccho edited this page May 2, 2019
·
14 revisions
当ライブラリがサポートしているMatrixの種類は5種類存在する。
名称 | 関数指定 |
---|---|
STL系 | draw(matrix) |
レイヤーSTL系 | draw(matrix, 選択レイヤー) |
生配列系 | draw(matrix, 横幅, 縦幅) |
レイヤー生配列系 | draw(matrix, 選択レイヤー, 横幅, 縦幅) |
一次元配列系 | drawArray(matrix, 横幅, 縦幅) |
それぞれの種類のサンプルコードを以下に示す。
ソースコード
#include <DTL.hpp>
#include <cstddef>
#include <cstdint>
#include <array>
int main() {
using shape_t = std::uint_fast8_t;
constexpr std::size_t width{ 16 };
constexpr std::size_t height{ 8 };
std::array<std::array<shape_t, width>, height> matrix{ {} };
dtl::shape::Border<shape_t>(1).draw(matrix);
dtl::console::OutputStringBool<shape_t>("#","/").draw(matrix);
}
出力結果
################
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
################
ソースコード
#include <DTL.hpp>
#include <cstddef>
#include <cstdint>
#include <array>
int main() {
using shape_t = std::uint_fast8_t;
constexpr std::size_t width{ 16 };
constexpr std::size_t height{ 8 };
constexpr std::size_t layer_max{ 2 };
constexpr std::size_t draw_layer{ 1 };
std::array<std::array<std::array<shape_t, layer_max>, width>, height> matrix{ {} };
dtl::shape::Border<shape_t>(1).draw(matrix, draw_layer);
dtl::console::OutputStringBool<shape_t>("#", "/").draw(matrix, draw_layer);
}
出力結果
################
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
################
ソースコード
#include <DTL.hpp>
#include <cstddef>
#include <cstdint>
#include <array>
int main() {
using shape_t = std::uint_fast8_t;
constexpr std::size_t width{ 16 };
constexpr std::size_t height{ 8 };
shape_t matrix[height][width]{};
dtl::shape::Border<shape_t>(1).draw(matrix, width, height);
dtl::console::OutputStringBool<shape_t>("#", "/").draw(matrix, width, height);
}
出力結果
################
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
################
ソースコード
#include <DTL.hpp>
#include <cstddef>
#include <cstdint>
#include <array>
int main() {
using shape_t = std::uint_fast8_t;
constexpr std::size_t width{ 16 };
constexpr std::size_t height{ 8 };
constexpr std::size_t layer_max{ 2 };
constexpr std::size_t draw_layer{ 1 };
shape_t matrix[height][width][layer_max]{};
dtl::shape::Border<shape_t>(1).draw(matrix, draw_layer, width, height);
dtl::console::OutputStringBool<shape_t>("#", "/").draw(matrix, draw_layer, width, height);
}
出力結果
################
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
################
ソースコード
#include <DTL.hpp>
#include <cstddef>
#include <cstdint>
#include <array>
int main() {
using shape_t = std::uint_fast8_t;
constexpr std::size_t width{ 16 };
constexpr std::size_t height{ 8 };
shape_t matrix[height*width]{};
dtl::shape::Border<shape_t>(1).drawArray(matrix, width, height);
dtl::console::OutputStringBool<shape_t>("#", "/").drawArray(matrix, width, height);
}
出力結果
################
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
#//////////////#
################
Copyright (c) 2018-2021 As Project.
Distributed under the Boost Software License, Version 1.0.(See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)