我想像这张图片一样在可触摸屏幕上模拟一个模拟操纵杆.

当粘贴区域的中心设置为(cx,cy)时,如何从触摸位置(tx,ty)计算X方向比和Y方向比(-1.0~1.0)?

由于D3DPOOL_SCRATCH的处理速度很慢,我编写了桌面捕获程序以引用Internet上的报告.然而,结果是漆黑图片.这是控制台程序的结果还是有其他原因?
#include <stdio.h>
#include <Windows.h>
#include <d3d9.h>
void main()
{
CoInitialize(NULL);
LPDIRECT3D9 d3d9;
LPDIRECT3DDEVICE9 d3ddev;
d3d9 = Direct3DCreate9(D3D_SDK_VERSION);
int ww = GetSystemMetrics(SM_CXSCREEN);
int wh = GetSystemMetrics(SM_CYSCREEN);
HWND hwnd = GetDesktopWindow();
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp, sizeof(d3dpp));
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.BackBufferCount = 1;
d3dpp.BackBufferWidth = ww;
d3dpp.BackBufferHeight = wh;
d3dpp.MultiSampleType = D3DMULTISAMPLE_NONE;
d3dpp.MultiSampleQuality = 0;
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
d3dpp.hDeviceWindow = hwnd;
d3dpp.Flags = D3DPRESENTFLAG_LOCKABLE_BACKBUFFER;
d3dpp.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT;
d3d9->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, …Run Code Online (Sandbox Code Playgroud) 我问如何在DirectX中拍摄屏幕截图并回答"使用GetFrontBufferData()".但是,MSDN中描述了"这个功能非常慢,按设计,不应该用于任何性能关键路径" .
当我向其他人询问测量时,"将后缓冲器的数据传输到系统存储器"得到了回答.但是,我无法找到具体的方法.
这是一个失败的例子.请让我知道正确的代码.
#include <stdio.h>
#include <Windows.h>
#include <d3d9.h>
#include <d3dx9tex.h>
void main()
{
CoInitialize(NULL);
HWND hwnd = GetDesktopWindow();
LPDIRECT3D9 d3d9;
D3DDISPLAYMODE ddm;
d3d9 = Direct3DCreate9(D3D_SDK_VERSION);
d3d9->GetAdapterDisplayMode(D3DADAPTER_DEFAULT,&ddm);
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory(&d3dpp,sizeof(D3DPRESENT_PARAMETERS));
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_COPY;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.BackBufferCount = 1;
d3dpp.BackBufferWidth = ddm.Width;
d3dpp.BackBufferHeight = ddm.Height;
d3dpp.MultiSampleType = D3DMULTISAMPLE_NONE;
d3dpp.MultiSampleQuality = 0;
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
d3dpp.hDeviceWindow = hwnd;
d3dpp.Flags = D3DPRESENTFLAG_VIDEO;
d3dpp.FullScreen_RefreshRateInHz = D3DPRESENT_RATE_DEFAULT;
d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT;
LPDIRECT3DDEVICE9 dev;
d3d9->CreateDevice(D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL, …Run Code Online (Sandbox Code Playgroud) 我想创建一个警报应用程序.
我找到了在后台操作计时器的方法.但是没有找到控制显示器功率的API(我希望在电源关闭时打开显示器的电源).
Windows 10(Windows Universal App)是否有足够的API来创建该应用程序?
我正在尝试使用libvpx安装Android x86的webm解码器.
我通过以下命令构建了库并获得了"libvpx.a".
../configure --target=x86-android-gcc --disable-vp8-encoder --disable-vp9-encoder --disable-examples --sdk-path=$ANDROID_NDK_ROOT --enable-pic --enable-postproc
Run Code Online (Sandbox Code Playgroud)
当我在Windows上使用此库是ndk-build时,发生了错误.
C:/android/[project]/jni/../plib/libvpx.a(postproc_mmx.asm.o)(.text+0x1c8): error: undefined reference to 'rand'
C:/android/[project]/jni/../plib/libvpx.a(postproc_sse2.asm.o)(.text+0x65c): error: undefined reference to 'rand'
collect2.exe: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
libmepx.a for armeabi没有出现错误.有人不知道解决方案吗?
(JNI/Android.mk)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := sublib
LOCAL_SRC_FILES := sublib.cpp
LOCAL_LDLIBS := -llog
LOCAL_STATIC_LIBRARIES := libvpx_pre
include $(BUILD_SHARED_LIBRARY)
include $(LOCAL_PATH)/../plib/Android_x86.mk
Run Code Online (Sandbox Code Playgroud)
(PLIB/Android_x86.mk)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libvpx_pre
LOCAL_SRC_FILES := libvpx.a
LOCAL_STATIC_LIBRARIES := cpufeatures
include $(PREBUILT_STATIC_LIBRARY)
$(call import-module,android/cpufeatures)
Run Code Online (Sandbox Code Playgroud) 我用C#和.NET 4.0编写了简易测试程序.
[DllImport("user32.dll")]
static extern IntPtr WindowFromPoint(int xPoint, int yPoint);
Point pt = MousePosition;
IntPtr w = WindowFromPoint(pt.X, pt.Y);
Run Code Online (Sandbox Code Playgroud)
如果它建立为32位,它可以工作.但如果它构建为64位,则会返回不相关的窗口句柄.有解决方案或替代方案吗?
android ×2
c# ×2
capture ×2
desktop ×2
directx ×2
screenshot ×2
.net ×1
64-bit ×1
android-ndk ×1
android-x86 ×1
c ×1
c++ ×1
directx-9 ×1
iphone ×1
joystick ×1
libvpx ×1
touch ×1
uwp ×1
windows-10 ×1
winforms ×1