Added image writing support
This commit is contained in:
parent
51b555464a
commit
8a28d6945a
|
@ -2,10 +2,12 @@
|
|||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="c0ed70cb-4993-460a-ac67-231f74ca4a81" name="Default" comment="">
|
||||
<change type="DELETED" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/markov/markov.go" afterPath="$PROJECT_DIR$/markov/markov.go" />
|
||||
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/examples/pngwriter/png.go" />
|
||||
<change type="MOVED" beforePath="$PROJECT_DIR$/markov/markov.go" afterPath="$PROJECT_DIR$/examples/markov/markov.go" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
|
||||
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/pixclient.go" afterPath="$PROJECT_DIR$/pixclient.go" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="TRACKING_ENABLED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
|
@ -18,22 +20,34 @@
|
|||
<file leaf-file-name="pixclient.go" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="331">
|
||||
<caret line="22" column="22" lean-forward="false" selection-start-line="22" selection-start-column="22" selection-end-line="22" selection-end-column="22" />
|
||||
<state relative-caret-position="439">
|
||||
<caret line="66" column="73" lean-forward="false" selection-start-line="66" selection-start-column="73" selection-end-line="66" selection-end-column="73" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="markov.go" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/markov/markov.go">
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="10" column="0" lean-forward="false" selection-start-line="10" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
|
||||
<state relative-caret-position="490">
|
||||
<caret line="44" column="65" lean-forward="false" selection-start-line="44" selection-start-column="65" selection-end-line="44" selection-end-column="65" />
|
||||
<folding>
|
||||
<element signature="e#14#80#0" expanded="true" />
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="png.go" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/examples/pngwriter/png.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="272">
|
||||
<caret line="16" column="30" lean-forward="false" selection-start-line="16" selection-start-column="30" selection-end-line="16" selection-end-column="30" />
|
||||
<folding>
|
||||
<element signature="e#14#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -41,9 +55,27 @@
|
|||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Go File" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/markov/markov.go" />
|
||||
<option value="$PROJECT_DIR$/pngwriter/png.go" />
|
||||
<option value="$PROJECT_DIR$/examples/markov/markov.go" />
|
||||
<option value="$PROJECT_DIR$/examples/pngwriter/png.go" />
|
||||
<option value="$PROJECT_DIR$/pixclient.go" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsGulpfileManager">
|
||||
|
@ -51,7 +83,7 @@
|
|||
<sorting>DEFINITION_ORDER</sorting>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds">
|
||||
<option name="width" value="1950" />
|
||||
<option name="width" value="2160" />
|
||||
<option name="height" value="1421" />
|
||||
</component>
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
||||
|
@ -70,8 +102,8 @@
|
|||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="Scope" />
|
||||
<pane id="Scratches" />
|
||||
<pane id="Scope" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<PATH>
|
||||
|
@ -93,6 +125,28 @@
|
|||
<option name="myItemId" value="pixclient" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="examples" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="pngwriter" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
</PATH>
|
||||
<PATH>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="pixclient" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="pixclient" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="examples" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
</PATH_ELEMENT>
|
||||
<PATH_ELEMENT>
|
||||
<option name="myItemId" value="markov" />
|
||||
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
|
||||
|
@ -102,6 +156,16 @@
|
|||
</pane>
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="last_opened_file_path" value="$USER_HOME$" />
|
||||
<property name="settings.editor.selected.configurable" value="preferences.pluginManager" />
|
||||
<property name="DefaultGoTemplateProperty" value="Go File" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/examples" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
|
@ -115,16 +179,16 @@
|
|||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="Go Single File.go run markov.go">
|
||||
<configuration default="false" name="go run test.go" type="GoRunFileConfiguration" factoryName="Go Single File" temporary="true">
|
||||
<module name="pixclient" />
|
||||
<working_directory value="$PROJECT_DIR$/" />
|
||||
<filePath value="$PROJECT_DIR$/main/test.go" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="false" name="go run markov.go" type="GoRunFileConfiguration" factoryName="Go Single File" temporary="true">
|
||||
<module name="pixclient" />
|
||||
<working_directory value="$PROJECT_DIR$/" />
|
||||
<filePath value="$PROJECT_DIR$/markov/markov.go" />
|
||||
<filePath value="$PROJECT_DIR$/examples/markov/markov.go" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="false" name="go run png.go" type="GoRunFileConfiguration" factoryName="Go Single File" temporary="true">
|
||||
<module name="pixclient" />
|
||||
<working_directory value="$PROJECT_DIR$/" />
|
||||
<filePath value="$PROJECT_DIR$/examples/pngwriter/png.go" />
|
||||
<method />
|
||||
</configuration>
|
||||
<configuration default="true" type="GoApplicationRunConfiguration" factoryName="Go Application">
|
||||
|
@ -182,13 +246,13 @@
|
|||
<method />
|
||||
</configuration>
|
||||
<list size="2">
|
||||
<item index="0" class="java.lang.String" itemvalue="Go Single File.go run test.go" />
|
||||
<item index="1" class="java.lang.String" itemvalue="Go Single File.go run markov.go" />
|
||||
<item index="0" class="java.lang.String" itemvalue="Go Single File.go run markov.go" />
|
||||
<item index="1" class="java.lang.String" itemvalue="Go Single File.go run png.go" />
|
||||
</list>
|
||||
<recent_temporary>
|
||||
<list size="2">
|
||||
<item index="0" class="java.lang.String" itemvalue="Go Single File.go run markov.go" />
|
||||
<item index="1" class="java.lang.String" itemvalue="Go Single File.go run test.go" />
|
||||
<item index="1" class="java.lang.String" itemvalue="Go Single File.go run png.go" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
|
@ -196,19 +260,19 @@
|
|||
<option name="remove_strategy" value="false" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="0" y="0" width="1950" height="1421" extended-state="0" />
|
||||
<frame x="0" y="0" width="2160" height="1421" extended-state="0" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.124357656" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.14146568" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32806623" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32806623" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
|
@ -225,26 +289,168 @@
|
|||
<option name="myLimit" value="2678400000" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager />
|
||||
<breakpoint-manager>
|
||||
<option name="time" value="1" />
|
||||
</breakpoint-manager>
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="459">
|
||||
<caret line="27" column="19" lean-forward="false" selection-start-line="27" selection-start-column="19" selection-end-line="27" selection-end-column="19" />
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/markov/markov.go">
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="833">
|
||||
<caret line="49" column="22" lean-forward="false" selection-start-line="49" selection-start-column="22" selection-end-line="49" selection-end-column="22" />
|
||||
<folding>
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/pngwriter/png.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="19" column="35" lean-forward="false" selection-start-line="19" selection-start-column="35" selection-end-line="19" selection-end-column="35" />
|
||||
<folding>
|
||||
<element signature="e#14#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1190">
|
||||
<caret line="70" column="27" lean-forward="false" selection-start-line="70" selection-start-column="27" selection-end-line="70" selection-end-column="27" />
|
||||
<folding>
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="833">
|
||||
<caret line="49" column="22" lean-forward="false" selection-start-line="49" selection-start-column="22" selection-end-line="49" selection-end-column="22" />
|
||||
<folding>
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/pngwriter/png.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="323">
|
||||
<caret line="19" column="35" lean-forward="true" selection-start-line="19" selection-start-column="35" selection-end-line="19" selection-end-column="35" />
|
||||
<folding>
|
||||
<element signature="e#14#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1139">
|
||||
<caret line="67" column="31" lean-forward="false" selection-start-line="67" selection-start-column="31" selection-end-line="67" selection-end-column="31" />
|
||||
<folding>
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="833">
|
||||
<caret line="49" column="22" lean-forward="true" selection-start-line="49" selection-start-column="22" selection-end-line="49" selection-end-column="22" />
|
||||
<folding>
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/pngwriter/png.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="10" column="51" lean-forward="true" selection-start-line="10" selection-start-column="51" selection-end-line="10" selection-end-column="51" />
|
||||
<folding>
|
||||
<element signature="e#14#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="238">
|
||||
<caret line="14" column="15" lean-forward="true" selection-start-line="14" selection-start-column="15" selection-end-line="14" selection-end-column="15" />
|
||||
<folding>
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/pngwriter/png.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="255">
|
||||
<caret line="15" column="13" lean-forward="false" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="13" />
|
||||
<folding>
|
||||
<element signature="e#14#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="10" column="0" lean-forward="false" selection-start-line="10" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="459">
|
||||
<caret line="27" column="19" lean-forward="false" selection-start-line="27" selection-start-column="19" selection-end-line="27" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="10" column="57" lean-forward="false" selection-start-line="10" selection-start-column="57" selection-end-line="10" selection-end-column="57" />
|
||||
<folding>
|
||||
<element signature="e#14#80#0" expanded="true" />
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -254,17 +460,17 @@
|
|||
<state relative-caret-position="459">
|
||||
<caret line="27" column="19" lean-forward="true" selection-start-line="27" selection-start-column="19" selection-end-line="27" selection-end-column="19" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/markov/markov.go">
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="153">
|
||||
<caret line="9" column="25" lean-forward="false" selection-start-line="9" selection-start-column="25" selection-end-line="9" selection-end-column="25" />
|
||||
<folding>
|
||||
<element signature="e#14#80#0" expanded="true" />
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -274,18 +480,18 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/main/test.go" />
|
||||
<entry file="file://$PROJECT_DIR$/markov/markov.go">
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="663">
|
||||
<caret line="43" column="28" lean-forward="true" selection-start-line="43" selection-start-column="28" selection-end-line="43" selection-end-column="28" />
|
||||
<folding>
|
||||
<element signature="e#14#80#0" expanded="true" />
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -295,18 +501,18 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/main/test.go" />
|
||||
<entry file="file://$PROJECT_DIR$/markov/markov.go">
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="306">
|
||||
<caret line="22" column="34" lean-forward="true" selection-start-line="22" selection-start-column="34" selection-end-line="22" selection-end-column="34" />
|
||||
<folding>
|
||||
<element signature="e#14#80#0" expanded="true" />
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -316,7 +522,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -327,7 +533,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -338,7 +544,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -349,7 +555,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="50" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -360,7 +566,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -370,7 +576,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -380,7 +586,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -390,7 +596,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -400,7 +606,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -410,7 +616,7 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -420,36 +626,45 @@
|
|||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/main/test.go" />
|
||||
<entry file="file://$PROJECT_DIR$/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="170">
|
||||
<caret line="10" column="0" lean-forward="false" selection-start-line="10" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#14#80#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/lib/golang/src/runtime/panic.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="288">
|
||||
<caret line="499" column="0" lean-forward="false" selection-start-line="499" selection-start-column="0" selection-end-line="499" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/pngwriter/png.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="272">
|
||||
<caret line="16" column="30" lean-forward="false" selection-start-line="16" selection-start-column="30" selection-end-line="16" selection-end-column="30" />
|
||||
<folding>
|
||||
<element signature="e#14#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/examples/markov/markov.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="490">
|
||||
<caret line="44" column="65" lean-forward="false" selection-start-line="44" selection-start-column="65" selection-end-line="44" selection-end-column="65" />
|
||||
<folding>
|
||||
<element signature="e#14#91#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/pixclient.go">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="331">
|
||||
<caret line="22" column="22" lean-forward="false" selection-start-line="22" selection-start-column="22" selection-end-line="22" selection-end-column="22" />
|
||||
<state relative-caret-position="439">
|
||||
<caret line="66" column="73" lean-forward="false" selection-start-line="66" selection-start-column="73" selection-end-line="66" selection-end-column="73" />
|
||||
<folding>
|
||||
<element signature="e#19#77#0" expanded="true" />
|
||||
<element signature="e#19#86#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
|
|
@ -4,18 +4,28 @@ import (
|
|||
"git.jcg.re/jcgruenhage/pixclient"
|
||||
"math/rand"
|
||||
"net"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
func main() {
|
||||
x, y := 1920, 1200
|
||||
client := pixclient.Init(net.IPv4(94, 45, 231, 39), 1234)
|
||||
c := make(chan int)
|
||||
for i := 0; i < 3; i++ {
|
||||
go markov(strconv.Itoa(i), c)
|
||||
}
|
||||
print(<- c)
|
||||
}
|
||||
|
||||
func markov(seed string, c chan int) {
|
||||
client := pixclient.NewClient(net.IPv4(127, 0, 0, 1), 1235)
|
||||
x, y := client.Size()
|
||||
currentX := rand.Intn(x)
|
||||
currentY := rand.Intn(y)
|
||||
r, g, b := byte(255), byte(0), byte(0)
|
||||
counter := 0
|
||||
var direction int
|
||||
for true {
|
||||
direction := rand.Intn(4)
|
||||
for ((currentX == x-1) && (direction == 1)) || ((currentX == 0) && (direction == 3)) || ((currentY == y-1) && (direction == 2)) || ((currentY == 0) && (direction == 0)) {
|
||||
oldDirection := direction
|
||||
for ((currentX == x-1) && (direction == 1)) || ((currentX == 0) && (direction == 3)) || ((currentY == y-1) && (direction == 2)) || ((currentY == 0) && (direction == 0) || oldDirection == direction) {
|
||||
direction = rand.Intn(4)
|
||||
}
|
||||
if direction == 0 {
|
||||
|
@ -32,7 +42,7 @@ func main() {
|
|||
if counter%50 == 0 {
|
||||
iterateColor(&r, &g, &b)
|
||||
}
|
||||
client.WritePixel(currentX, currentY, r, g, b, 255)
|
||||
client.WritePixel(currentX, currentY, r, g, b, 50)
|
||||
counter++
|
||||
}
|
||||
}
|
23
examples/pngwriter/png.go
Normal file
23
examples/pngwriter/png.go
Normal file
|
@ -0,0 +1,23 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"git.jcg.re/jcgruenhage/pixclient"
|
||||
"net"
|
||||
"image/png"
|
||||
"os"
|
||||
)
|
||||
|
||||
func main() {
|
||||
client := pixclient.NewClient(net.IPv4(127, 0, 0, 1), 1235)
|
||||
imgFile, err := os.Open("/home/jcgruenhage/testimg2.png")
|
||||
check(err)
|
||||
png, err := png.Decode(imgFile)
|
||||
print("Bis hier hin funktioniere ich")
|
||||
check(err)
|
||||
client.WriteImage(png)
|
||||
}
|
||||
func check(err error) {
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
22
pixclient.go
22
pixclient.go
|
@ -6,6 +6,7 @@ import (
|
|||
"net"
|
||||
"strconv"
|
||||
"strings"
|
||||
"image"
|
||||
)
|
||||
|
||||
type Client struct {
|
||||
|
@ -14,12 +15,12 @@ type Client struct {
|
|||
height int
|
||||
}
|
||||
|
||||
func Init(addr net.IP, port int) *Client {
|
||||
func NewClient(addr net.IP, port int) *Client {
|
||||
var client Client
|
||||
connection, err := net.Dial("tcp", addr.String()+":"+strconv.Itoa(port))
|
||||
check(err)
|
||||
client.connection = connection
|
||||
client.Size()
|
||||
client.height, client.width = client.Size()
|
||||
return &client
|
||||
}
|
||||
|
||||
|
@ -41,12 +42,21 @@ func (Client *Client) WritePixel(x, y int, r, g, b, a byte) error {
|
|||
[]byte("\n")...)
|
||||
Client.connection.Write(bytes)
|
||||
|
||||
//
|
||||
//Client.connection.Write([]byte(
|
||||
// fmt.Sprintf("PX %d %d %X\n", x, y, []byte{r, g, b, a})))
|
||||
return nil
|
||||
}
|
||||
|
||||
func (Client *Client) WriteImage(image image.Image) {
|
||||
bounds := image.Bounds()
|
||||
for x := bounds.Min.X; x < bounds.Max.X; x++ {
|
||||
for y := bounds.Min.Y; y < bounds.Max.Y; y++ {
|
||||
r, g, b, a := image.At(x, y).RGBA()
|
||||
Client.WritePixel(x, y, byte(r), byte(g), byte(b), byte(a))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (Client *Client) Size() (int, int) {
|
||||
Client.connection.Write([]byte("SIZE\n"))
|
||||
reader := bufio.NewReader(Client.connection)
|
||||
|
@ -54,8 +64,10 @@ func (Client *Client) Size() (int, int) {
|
|||
check(err)
|
||||
sizeString := string(size)
|
||||
sizeArray := strings.Split(sizeString, " ")
|
||||
Client.width, _ = strconv.Atoi(sizeArray[1])
|
||||
Client.height, _ = strconv.Atoi(sizeArray[2])
|
||||
Client.width, err = strconv.Atoi(strings.TrimSpace(sizeArray[1]))
|
||||
check(err)
|
||||
Client.height, err = strconv.Atoi(strings.TrimSpace(sizeArray[2]))
|
||||
check(err)
|
||||
return Client.width, Client.height
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue