<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Имитация Lazymouse (Zbrush)]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=16627&amp;type=atom" />
	<updated>2021-10-04T23:51:19Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=16627</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149910#p149910" />
			<content type="html"><![CDATA[<p>Да, проверил на семёрке, в пайнте работает.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-10-04T23:51:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149910#p149910</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149909#p149909" />
			<content type="html"><![CDATA[<p>Но это как-раз несложно проверить тому у кого она есть.<br />Вон у пользователя на семерке везде работает, кроме как в фотошопе.<br /><a href="https://www.reddit.com/r/photoshop/comments/cjkj0q/silky_shark_wont_work_on_photoshop_cs6/">https://www.reddit.com/r/photoshop/comm … oshop_cs6/</a></p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2021-10-04T23:26:37Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149909#p149909</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149891#p149891" />
			<content type="html"><![CDATA[<p>Пока не было времени посмотреть, но там требования Windows 8.1, Windows 10, так что может не так всё просто.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-10-04T16:02:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149891#p149891</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149890#p149890" />
			<content type="html"><![CDATA[<p>Судя по всему в коде используется хук на мышь и позиционирование виртуального курсора через RAWINPUT.<br />Так что можно и без dll.</p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2021-10-04T15:47:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149890#p149890</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149883#p149883" />
			<content type="html"><![CDATA[<p>Спасибо, только изучите <a href="https://forum.script-coding.com/misc.php?action=rules">правила оформления</a>, обратите внимание на избыточное цитирование, оформление ссылок и точки в конце предложений. Я отредактировал ваш пост.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-10-04T12:12:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149883#p149883</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149882#p149882" />
			<content type="html"><![CDATA[<p>Если разрешено давать ссылки, тогда пожалуйста, вот - <a href="https://github.com/stoicshark/silkyshark/releases">https://github.com/stoicshark/silkyshark/releases</a>.<br />(Не Ahk, но именно то, что нужно.)</p>]]></content>
			<author>
				<name><![CDATA[Alexey_cake]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=42025</uri>
			</author>
			<updated>2021-10-04T11:23:41Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149882#p149882</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149881#p149881" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Alexey_cake пишет:</cite><blockquote><p>нашёл необходимый готовый инструмент на Github&#039;e</p></blockquote></div><p>Нашли — поделитесь.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-10-04T11:17:10Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149881#p149881</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149880#p149880" />
			<content type="html"><![CDATA[<p><strong>Foma</strong>, я вообще пошёл путём самурая:</p><p>В основе механизма &quot;слежки&quot; лежит теорема пифагора с прибамбасами. Константа в данном случае только значение радиуса реагирования &quot;рисующего&quot; курсора в сетке коородинат целевого окна. Если значение гипотенузы между &quot;рисующим&quot; курсором, старым положением курсора и его новым положением, больше, чем заданный порог радиуса реагирования, то &quot;рисующий&quot; курсор движется на их разницу по этой гипотенузе; если меньше, то стоит на месте.</p><p>В программировании я очень слаб, поэтому вывел формулу в excel (не смеяться. Я сказал не смеяться!), с помощью которой подобная идея работает. </p><p>Далее идея состояла в том, чтобы разница между координатами курсора и координатами &quot;рисующего&quot; курсора была Offset&#039;ом для имитации LButton, чтобы там шла линия. Пока искал как это сделать, нашёл необходимый готовый инструмент на Github&#039;e, так что кажется это уже не актуально.</p><p>Но всё равно всем спасибо за подсказки и внимание к теме.</p>]]></content>
			<author>
				<name><![CDATA[Alexey_cake]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=42025</uri>
			</author>
			<updated>2021-10-04T11:13:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149880#p149880</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149875#p149875" />
			<content type="html"><![CDATA[<p>Я сам немного потыкал, пока понял насколько сложна задача.<br />Лучшие спецы форума вам написали, что и для них это не просто и долго.<br />Либо заказывайте у них в платном отделе, либо смиритесь.</p>]]></content>
			<author>
				<name><![CDATA[Foma]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=31521</uri>
			</author>
			<updated>2021-10-04T05:59:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149875#p149875</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149874#p149874" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>Может топик-стартер возьмет какие-нибудь идеи из нашего разговора и попытается их воплотить.</p></blockquote></div><p>Ух ты, сколько ответов. Не ожидал, что это вообще кому-то будет интересно.<br />Спасибо, много интересной информации, конечно, кто-нибудь попробую применить из этого.<br /></p><div class="quotebox"><cite>Foma пишет:</cite><blockquote><div class="quotebox"><blockquote><p>с фотошопом таким способом не получится</p></blockquote></div><p> Потому я и спрашивал, для какого приложения. Для всех сразу - много совсем другой работы, не связанной с самим алгоритмом.</p></blockquote></div><p>Ну хотя бы для начала начать с простого, с Paint.</p>]]></content>
			<author>
				<name><![CDATA[Alexey_cake]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=42025</uri>
			</author>
			<updated>2021-10-04T03:23:48Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149874#p149874</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149851#p149851" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>с фотошопом таким способом не получится</p></blockquote></div><p> Потому я и спрашивал, для какого приложения. Для всех сразу - много совсем другой работы, не связанной с самим алгоритмом.</p>]]></content>
			<author>
				<name><![CDATA[Foma]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=31521</uri>
			</author>
			<updated>2021-10-02T14:08:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149851#p149851</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149850#p149850" />
			<content type="html"><![CDATA[<p>У меня такого не наблюдается.<br />Но например с фотошопом таким способом не получится, так как перед посылом левой кнопки мыши его надо активировать.<br />Так что инжектить dll наиболее верный вариант.</p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2021-10-02T11:57:41Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149850#p149850</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149849#p149849" />
			<content type="html"><![CDATA[<p>В целом идею понял, удалось заставить как-то работать. Но много сайд-эффектов, в частности, после завершения скрипта пайнт перестаёт функционировать нормально, мышь в нём начинает глючить.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-10-02T08:24:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149849#p149849</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149848#p149848" />
			<content type="html"><![CDATA[<p>У меня это не работает, просто мышь начинает глючить. Кроме того, не очень понимаю, почему это вообще должно работать — где у тебя вычисление координат видимой мыши?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-10-02T07:04:01Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149848#p149848</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Имитация Lazymouse (Zbrush)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=149847#p149847" />
			<content type="html"><![CDATA[<p>Как я и писал можно и без хука.<br /></p><div class="codebox"><pre><code>x := 0
y := 200
w := 500
h := 500
global hpaint := 0x34094e

OnMessage(0x200, &quot;WM_MOUSEMOVE&quot;)
OnMessage(0x201, &quot;WM_LBUTTONDOWN&quot;)
OnMessage(0x202, &quot;WM_LBUTTONUP&quot;)
Gui, +HWNDhGui +AlwaysOnTop
DllCall(&quot;GetWindowBand&quot;, &quot;ptr&quot;, hGui, &quot;uint*&quot;, band)
Gui, Destroy
hGui := &quot;&quot;
if (band = 1)
{
   If (A_PtrSize = 8)
      RunWait &quot;C:\Program Files\AutoHotkey\AutoHotkeyU64_UIA.exe&quot; &quot;%A_ScriptFullPath%&quot;
   Else If A_IsUnicode
      RunWait &quot;C:\Program Files\AutoHotkey\AutoHotkeyU32_UIA.exe&quot; &quot;%A_ScriptFullPath%&quot;
   Else
      RunWait &quot;C:\Program Files\AutoHotkey\AutoHotkeyA32_UIA.exe&quot; &quot;%A_ScriptFullPath%&quot;
}
#SingleInstance Force
SetBatchLines -1
SetWinDelay -1
OnExit, Uninitialize 
Gui, +HWNDhGui -DPIScale -Caption +AlwaysOnTop +E0x02000000 +E0x00080000 ;  WS_EX_COMPOSITED := E0x02000000  WS_EX_LAYERED := E0x00080000
Gui, Show, x%x% y%y% w%w% h%h% NA

DllCall(&quot;LoadLibrary&quot;, &quot;str&quot;, &quot;magnification.dll&quot;)
DllCall(&quot;magnification.dll\MagInitialize&quot;)
hChildMagnifier := DllCall(&quot;CreateWindowEx&quot;, &quot;UInt&quot;, 0, &quot;Str&quot;, &quot;Magnifier&quot;, &quot;Str&quot;, &quot;MagnifierWindow&quot;, &quot;UInt&quot;, WS_CHILD := 0x40000000|4, &quot;Int&quot;, 0, &quot;Int&quot;, 0, &quot;Int&quot;, w, &quot;Int&quot;, h, &quot;Ptr&quot;, hGui, &quot;UInt&quot;, 0, &quot;Ptr&quot;, DllCall(&quot;GetWindowLong&quot; (A_PtrSize=8 ? &quot;Ptr&quot; : &quot;&quot;), &quot;Ptr&quot;, hGui, &quot;Int&quot;, GWL_HINSTANCE := -6 , &quot;ptr&quot;), &quot;UInt&quot;, 0, &quot;ptr&quot;)
WinShow, ahk_id %hChildMagnifier%
Loop
{
   if (A_PtrSize = 8)
   {
      VarSetCapacity(RECT, 16, 0)
      NumPut(x, RECT, 0, &quot;Int&quot;)
      NumPut(y, RECT, 4, &quot;Int&quot;)
      NumPut(w, RECT, 8, &quot;Int&quot;)
      NumPut(h, RECT, 12, &quot;Int&quot;)
      DllCall(&quot;magnification.dll\MagSetWindowSource&quot;, &quot;Ptr&quot;, hChildMagnifier, &quot;Ptr&quot;, &amp;RECT)
   }
   else
      DllCall(&quot;magnification.dll\MagSetWindowSource&quot;, &quot;Ptr&quot;, hChildMagnifier, &quot;Int&quot;, x, &quot;Int&quot;, y, &quot;Int&quot;, w, &quot;Int&quot;, h)
}
Return 

Uninitialize: 	
DllCall(&quot;magnification.dll\MagUninitialize&quot;)
ExitApp

WM_LBUTTONDOWN(wParam, lParam, Msg, hWnd)
{
   Critical
   PostMessage, Msg, wParam, lParam,, ahk_id %hpaint%
}

WM_LBUTTONUP(wParam, lParam, Msg, hWnd)
{
   Critical
   PostMessage, Msg, wParam, lParam,, ahk_id %hpaint% 
}

WM_MOUSEMOVE(wParam, lParam, Msg, hWnd)
{
   Critical
   PostMessage, Msg, wParam, lParam,, ahk_id %hpaint%
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2021-10-02T00:14:37Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=149847#p149847</id>
		</entry>
</feed>
